.opening-film{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#071820;color:#f0dfaf;overflow:hidden;font-family:SoupPixel,monospace}.opening-film[open]{display:grid;grid-template-rows:minmax(0,1fr) auto}.opening-film::backdrop{background:#071820}.opening-film video{display:block;width:100%;height:100%;min-height:0;object-fit:contain;background:#071820}.opening-film-controls{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:12px;padding:14px max(20px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));border-top:1px solid #526b6544;background:#102b35}.opening-film-controls button,.opening-film-controls p{pointer-events:auto;font:13px/1.5 SoupPixel,monospace}.opening-film-controls button{color:#f0dfaf;background:#15343ae8;border-color:#a5b294;padding:9px 14px;min-height:42px}.opening-film-controls p{background:#102b35ed;padding:10px 14px;margin:0}.opening-film-controls .opening-film-skip{color:#102b35;background:#e6c17f;border-color:#f0dfaf}@media(max-width:600px){.opening-film-controls{padding:10px 12px max(10px,env(safe-area-inset-bottom));gap:8px}.opening-film-controls button{font-size:12px;padding:7px 11px}}.location-film-stage{display:grid;place-items:center;min-height:0;overflow:hidden}.location-film-frame{position:relative;width:100%;height:100%;min-height:0}.location-film-caption{display:none}@media(max-width:600px){.location-film[open]{grid-template-rows:minmax(0,1fr) minmax(8em,auto) auto}.location-film-frame{height:auto;aspect-ratio:16/9}.location-film-frame:after{content:"";position:absolute;bottom:0;left:0;right:0;height:18%;background:#071820;pointer-events:none}.location-film-caption{display:block;margin:0;padding:16px 22px;font:14px/1.8 SoupPixel,monospace;text-align:center;color:#f0dfaf;align-self:start}}.category-focus{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.category-focus>svg{width:100%;height:100%;background:none}.category-focus[data-focus=gas] :is([data-molecule=hydrogen],[data-molecule=carbon-dioxide],[data-molecule=methane]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=water] :is([data-structure=water],[data-molecule=water]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=hydrogen] :is([data-molecule=hydrogen],[data-focus-part=hydrogen-reactant]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=carbon] :is([data-element=C],[data-group=CH₂],[data-group=CH₃],[data-group=CH]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=oxygen] :is([data-element=O],[data-group=OH]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=nitrogen] :is([data-element=N],[data-group=NH₂],[data-group=NH₃⁺]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=iron] :is([data-element^=Fe]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=electron] :is([data-group=e⁻],[data-focus-part=electron]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=mineral] :is([data-molecule=iron-bearing-rock],[data-focus-part=mineral],[data-element^=Fe]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=surface] :is([data-molecule=clay],.origin-environment>path:first-child,[data-focus-part=mineral]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=ligand] :is([data-group=ligand]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=protein] :is([data-structure=protein]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=small-reactants] :is([data-molecule=formaldehyde-pool],[data-molecule=glycolonitrile],[data-molecule=ammonia],[data-molecule=pyruvate],[data-molecule=lactate],[data-molecule=small-organics]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=reactive] :is([data-group=OH],[data-group=CN],[data-element=N],[data-element=O]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=carbonyl] :is([data-focus-part=carbonyl]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=hydroxyl] :is([data-group=OH],[data-group=CH₂OH],[data-focus-part=hydroxyl]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=activation-reagents] :is([data-structure=imidazole],[data-structure=methyl-isocyanide]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=activated] :is([data-molecule=activated-adenosine-nucleotide]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=imidazole] :is([data-structure=imidazole],[data-focus-part=imidazole]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=bond] :is([data-bond=single]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=phosphate] :is([data-element=P],[data-group=P]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=acid] :is([data-group=COO⁻],[data-group=COOH]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=amino] :is([data-group=NH₃⁺],[data-group=NH₂]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=side-chain] :is([data-molecule=alanine] [data-group=CH₃]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=pyruvate] :is([data-molecule=pyruvate]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=glucose] :is([data-molecule=sugar]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=acetyl] :is([data-group=acetyl-CoA]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=amino-chain] :is([data-amino-residue]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=head] :is([data-lipid-part=head],[data-focus-part=head]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=tail] :is([data-lipid-part=tail],[data-focus-part=tail]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=lipid] :is([data-structure=lipid]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=membrane] :is(.molecular-membrane,[data-focus-part=host-membrane],[data-focus-part=assembling-membrane]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=base] :is([data-ring=A],[data-ring=U],[data-chemistry-base],[data-group=A],[data-group=U],[data-group=C],[data-group=G]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=adenine] :is([data-strand-base=A]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=uracil] :is([data-strand-base=U]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=pair] :is([data-bond=pair]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=sugar] :is([data-ribose-ring],[data-group=ribose],[data-molecule=pentose-pool],[data-molecule=cyclic-pentose-pool],[data-sugar-form],[data-sugar-rule] [data-carbon-id],[data-sugar-rule] [data-atom-id][data-element=O]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=nucleoside] :is([data-ribose-ring],[data-chemistry-base],[data-focus-part=glycosidic]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=nucleotide] :is([data-focus-part=nucleotide]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=glycosidic] :is([data-focus-part=glycosidic]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=rna] :is([data-structure=rna],[data-focus-part=rna]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=dna] :is([data-structure=dna]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=sequence] :is([data-strand-base]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=substrate] :is([data-group=substrate]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=atp] :is([data-molecule=atp],[data-molecule=adp]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=peptide-link] :is([data-focus-part=peptide-link]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=ester-link] :is([data-focus-part=ester-link]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=partner] :is([data-focus-part=partner]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=magnesium] :is([data-element=Mg²⁺]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=adenine-structure] :is([data-chemistry-base=A]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=hcn] :is([data-focus-part=hcn-feed]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=pyrimidines] :is([data-chemistry-base=C],[data-chemistry-base=U]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=cyanide] :is([data-focus-part=cyanide]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=nitrile] :is([data-focus-part=nitrile]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.category-focus[data-focus=base-ring] :is([data-focus-part=base-ring]){filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.pipeline-landscape{position:absolute;left:50%;top:50%;width:100%;height:100%;transform:translate(-50%,-50%);z-index:0;pointer-events:none;font-family:SoupPixel,monospace}.pipeline-landscape>svg{width:100%;height:100%;overflow:visible;pointer-events:none}.pipeline-svg-label{font:18px SoupPixel,monospace;fill:#f0dfaf;paint-order:stroke;stroke:#16373d;stroke-width:5px;stroke-linejoin:round}.pipeline-target{position:absolute;pointer-events:auto;padding:0;border:0;background:transparent;box-shadow:none;clip-path:ellipse(49% 48% at 50% 50%);touch-action:manipulation}.pipeline-target:hover,.pipeline-target:focus-visible,.pipeline-target:active{background:transparent;border:0;box-shadow:none;outline:0;transform:none}.pipeline-landscape:has([data-pipeline-target=shore-compartment]:is(:hover,:focus-visible)) [data-world-object=shore-compartment],.pipeline-landscape:has([data-pipeline-target=protocell]:is(:hover,:focus-visible)) [data-world-object=protocell],.pipeline-landscape:has([data-pipeline-target=population]:is(:hover,:focus-visible)) [data-world-object=population],.pipeline-landscape:has([data-pipeline-target=partnership]:is(:hover,:focus-visible)) [data-world-object=partnership]{filter:drop-shadow(2px 0 #f0dfaf) drop-shadow(-2px 0 #f0dfaf) drop-shadow(0 2px #f0dfaf) drop-shadow(0 -2px #f0dfaf)}.pipeline-landscape:has([data-pipeline-target=shore-compartment][data-hint=true]) [data-world-object=shore-compartment],.pipeline-landscape:has([data-pipeline-target=protocell][data-hint=true]) [data-world-object=protocell],.pipeline-landscape:has([data-pipeline-target=population][data-hint=true]) [data-world-object=population],.pipeline-landscape:has([data-pipeline-target=partnership][data-hint=true]) [data-world-object=partnership]{animation:pipeline-object-hint 1.5s steps(4,end) infinite}.pipeline-action{position:absolute;pointer-events:auto;color:#f0dfaf;background:transparent;border:0;box-shadow:none;text-shadow:2px 2px #102b35;font-size:12px;padding:8px 11px;line-height:1.4}.pipeline-action:hover,.pipeline-action:focus-visible{color:#efb66c;background:transparent;border:0;box-shadow:none;text-decoration:underline;text-underline-offset:5px}.pipeline-action:active{transform:translateY(2px);box-shadow:none}.pipeline-action:disabled{opacity:.3}@keyframes pipeline-object-hint{50%{filter:drop-shadow(2px 0 #efb66c) drop-shadow(-2px 0 #efb66c) drop-shadow(0 2px #efb66c) drop-shadow(0 -2px #efb66c)}}.pipeline-physical-label{position:absolute;pointer-events:none;text-align:center;color:#e2d4a8;font-size:12px;text-shadow:2px 2px #16363c}.pipeline-objective{position:absolute;top:3%;left:50%;transform:translate(-50%);max-width:80%;color:#e7deaf;font-size:13px;line-height:1.5;text-align:center;text-shadow:2px 2px #12333d;pointer-events:none}.pipeline-inspect{position:absolute;pointer-events:auto;border:0;background:transparent;box-shadow:none;color:#f0dfaf;font-size:11px;text-shadow:2px 2px #16363c;padding:5px 8px}.pipeline-inspect:hover{background:#a8dbc018;border:0;box-shadow:none}.pipeline-mechanism{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;display:flex;flex-direction:column;align-items:center;pointer-events:auto;background:#153b415e}.pipeline-mechanism header{text-align:center;flex:none;padding:7px 10px 0;max-width:96%;z-index:1}.pipeline-mechanism h2{font-size:24px;font-weight:400;color:#f0dfaf;line-height:1.35}.pipeline-mechanism header p{font-size:12px;line-height:1.6;color:#bad8c7}.pipeline-mechanism header span{display:block;font-size:11px;line-height:1.7;color:#efb66c}.pipeline-mechanism>svg{width:100%;flex:1;min-height:0;overflow:visible}.pipeline-mechanism-caption{flex:none;max-width:94%;padding:4px 12px 7px;text-align:center;font-size:13px;line-height:1.55;color:#f0dfaf;text-shadow:2px 2px #15343d}.pipeline-mechanism .reaction-actions{position:relative;inset:auto;display:flex;gap:12px;flex:none;margin:0 0 8px;pointer-events:auto}.pipeline-mechanism .reaction-actions button{font-size:13px;padding:7px 15px}.pipeline-playback{position:absolute;top:0;right:0;bottom:0;left:0;z-index:8;display:flex;flex-direction:column;align-items:center;background:transparent;padding:10px 12px 12px;pointer-events:auto}.reaction-pool:has(>.pipeline-playback)>.pipeline-landscape,.reaction-pool:has(>.pipeline-playback)>.world-piece,.reaction-pool:has(>.pipeline-playback)>.pool-ripples{visibility:hidden}.reaction-pool.showing-mechanism>.empty-pool,.reaction-pool:has(>.pipeline-playback)>.empty-pool{visibility:hidden}.reaction-pool:has(.pipeline-compartment)>.empty-pool,.reaction-pool:has(.pipeline-pool-sample)>.empty-pool,.reaction-pool:has(>.pipeline-cells)>.empty-pool,.reaction-pool:has(>.pipeline-complex)>.empty-pool{display:none}.reaction-pool:has(>.pipeline-playback){min-height:430px}.pipeline-playback>header{flex:none;text-align:center;max-width:95%;padding:2px 5px 0}.pipeline-playback h2{font-size:23px;font-weight:400;line-height:1.45;color:#f0dfaf;text-shadow:2px 2px #102d35}.pipeline-playback header p{font-size:11px;line-height:1.65;color:#bcd4c0}.pipeline-playback>svg{width:100%;flex:1;min-height:0;overflow:visible}.pipeline-playback>p{font-size:12px;line-height:1.65;text-align:center;max-width:90%;margin:3px 0 8px;color:#f0dfaf;text-shadow:2px 2px #102d35}.pipeline-playback>div{display:flex;gap:12px;flex:none}.pipeline-playback>div>button{font-size:12px;padding:7px 15px}.reaction-pool>.live-mechanism:has(>.pipeline-mechanism-svg),.reaction-pool>.live-mechanism:has(>.activation-scene){top:0;right:0;bottom:0;left:0;justify-content:flex-start;gap:4px;padding:3px 0 7px}.reaction-pool>.live-mechanism:has(>.pipeline-mechanism-svg)>.live-title,.reaction-pool>.live-mechanism:has(>.activation-scene)>.live-title{position:relative;inset:auto;transform:none;flex:none;min-width:0;max-width:94%;margin:0 auto}.reaction-pool>.live-mechanism>.pipeline-mechanism-svg,.reaction-pool>.live-mechanism>.activation-scene{position:relative;inset:auto;top:auto;height:auto;flex:1;min-height:0;width:100%;overflow:visible}.reaction-pool>.live-mechanism:has(>.pipeline-mechanism-svg)>.live-observation,.reaction-pool>.live-mechanism:has(>.activation-scene)>.live-observation{display:block;position:relative;inset:auto;transform:none;flex:none;min-width:0;max-width:94%;margin:0 auto;padding:5px 12px;background:#102b3566}.reaction-pool>.live-mechanism:has(>.pipeline-mechanism-svg)>.reaction-actions,.reaction-pool>.live-mechanism:has(>.activation-scene)>.reaction-actions{position:relative;inset:auto;transform:none;flex:none;margin:2px auto 0}.natural-feed.rock-feed{left:4%;right:auto;top:10%;z-index:5}.rock-feed span{background:#173841e8;padding:4px 7px;max-width:130px;text-align:center;line-height:1.5}.pipeline-feeds{position:absolute;left:17%;right:17%;top:1%;display:flex;justify-content:center;gap:8px;overflow-x:auto;max-height:108px;z-index:3;padding:4px;scrollbar-width:thin;scrollbar-color:#b8c395 transparent}.pipeline-feeds>button{flex:0 0 104px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:5px;padding:3px 4px;border:0;background:transparent;box-shadow:none;font-size:9px;line-height:1.45;text-align:center;text-shadow:2px 2px #12333d}.pipeline-feeds>button:hover,.pipeline-feeds>button:focus-visible{background:#aac99e18;border:0;box-shadow:none;outline:2px solid #efb66c;outline-offset:0}.pipeline-feeds>button>svg{width:38px;height:38px;flex:none}.pipeline-feeds>button[data-hint=true]{animation:pipeline-feed-hint 1.5s steps(4,end) infinite}@keyframes pipeline-feed-hint{50%{background:#efb66c22;color:#f5cd8e}}.pipeline-stage-label{font:19px SoupPixel,monospace;fill:#f0dfaf;text-anchor:middle;paint-order:stroke;stroke:#16373d;stroke-width:5px;stroke-linejoin:round}.pipeline-lineage-time{font:17px SoupPixel,monospace;fill:#bfceb7;text-anchor:middle}.pipeline-water-glint{animation:pipeline-glint 5s steps(5,end) infinite}.pipeline-shore-current{animation:pipeline-current 7s ease-in-out infinite}.pipeline-bubble{animation:pipeline-rise 6s linear infinite;transform-box:fill-box;transform-origin:center}.pipeline-plume{animation:pipeline-plume 7s ease-in-out infinite;transform-box:fill-box;transform-origin:bottom}.pipeline-compartment{filter:drop-shadow(0 4px 0 #102e3630)}.pipeline-exchange-to-partner{animation:pipeline-exchange-forward 3s linear infinite}.pipeline-exchange-to-host{animation:pipeline-exchange-back 3s linear infinite}@keyframes pipeline-exchange-forward{0%{transform:translate(0);opacity:0}20%,80%{opacity:1}to{transform:translate(var(--exchange-distance,105px),var(--exchange-rise,21px));opacity:0}}@keyframes pipeline-exchange-back{0%{transform:translate(0);opacity:0}20%,80%{opacity:1}to{transform:translate(calc(0px - var(--exchange-distance,105px)),calc(0px - var(--exchange-rise,21px)));opacity:0}}@keyframes pipeline-glint{50%{opacity:.12}}@keyframes pipeline-current{50%{transform:translate(18px);opacity:.1}}@keyframes pipeline-rise{0%{transform:translateY(24px);opacity:0}20%{opacity:.7}90%{opacity:.2}to{transform:translateY(-115px);opacity:0}}@keyframes pipeline-plume{50%{transform:scaleX(1.12);opacity:.6}}@keyframes pipeline-hint{50%{border-color:#f2c471;filter:drop-shadow(0 0 6px #e2c170)}}@media(max-width:1050px){.pipeline-action{font-size:10px;padding:6px 8px}.pipeline-objective{font-size:11px}.pipeline-mechanism h2{font-size:20px}.pipeline-mechanism-caption{font-size:11px}}@media(max-width:700px){.pipeline-objective{font-size:10px;max-width:90%}.pipeline-action{font-size:9px;padding:6px;max-width:38%}.pipeline-mechanism h2{font-size:19px}.pipeline-mechanism header p{font-size:10px}.pipeline-mechanism-caption{font-size:10px}.pipeline-mechanism .reaction-actions button{font-size:11px}.pipeline-physical-label{font-size:9px}}@media(max-width:700px){.pipeline-playback{padding:5px 6px 8px}.pipeline-playback h2{font-size:17px}.pipeline-playback header p{font-size:9px}.pipeline-playback>p{font-size:10px;line-height:1.6;max-width:96%}.pipeline-playback>div>button{font-size:10px;padding:6px 12px}.rock-feed span{font-size:9px;max-width:110px}}@media(max-width:700px){.pipeline-feeds{left:20%;right:20%;gap:2px;max-height:90px;justify-content:flex-start}.pipeline-feeds>button{flex-basis:80px;font-size:8px}.pipeline-feeds>button>svg{width:28px;height:28px}}@media(prefers-reduced-motion:reduce){.pipeline-landscape *{animation:none!important}.pipeline-mechanism *{transition:none!important}}.pipeline-condition{position:absolute;pointer-events:auto;display:flex;flex-direction:column;align-items:center;width:14%;min-width:78px;max-width:142px;padding:0;border:0;background:transparent;box-shadow:none;touch-action:manipulation;color:#d3dcc5;isolation:isolate}.pipeline-condition>svg{display:block;width:100%;height:auto;max-height:77px;overflow:visible;opacity:.62;filter:drop-shadow(0 2px 0 #102b35)}.pipeline-condition>span{font-size:10px;line-height:1.5;text-align:center;text-shadow:2px 2px #102b35;opacity:0;min-height:30px;padding-top:3px;max-width:140px}.pipeline-condition:hover,.pipeline-condition:focus-visible,.pipeline-condition:active{border:0;background:transparent;box-shadow:none;transform:none;outline:0}.pipeline-condition:hover>svg,.pipeline-condition:focus-visible>svg,.pipeline-condition[data-selected=true]>svg{opacity:1;filter:drop-shadow(1px 0 #f0dfaf) drop-shadow(-1px 0 #f0dfaf) drop-shadow(0 1px #f0dfaf)}.pipeline-condition:is(:hover,:focus-visible,[data-selected=true],[data-hint=true])>span{opacity:1}.pipeline-condition[data-selected=true]{color:#efb66c}.pipeline-condition[data-hint=true]>svg{animation:pipeline-object-hint 1.5s steps(4,end) infinite;opacity:1}.pipeline-condition:disabled{opacity:.35;cursor:default}.pipeline-condition:disabled>svg{filter:none}.pipeline-landscape:has([data-pipeline-target=pool-sample]:is(:hover,:focus-visible,[data-hint=true])) [data-world-object=pool-sample]{filter:drop-shadow(2px 0 #f0dfaf) drop-shadow(-2px 0 #f0dfaf)}@media(max-width:700px){.pipeline-condition{min-width:61px}.pipeline-condition>svg{max-height:55px}.pipeline-condition>span{font-size:8px;line-height:1.4;min-height:23px}.pipeline-pool .pipeline-condition{max-width:80px}}@media(prefers-reduced-motion:reduce){.pipeline-condition>svg{animation:none!important}}.origin-chemistry text{font-family:SoupPixel,monospace;font-weight:400;paint-order:stroke;stroke:#14343b;stroke-width:2px;stroke-linejoin:round}.origin-chemistry .origin-caption{font-size:23px;fill:#f0dfaf;letter-spacing:.1px}.origin-chemistry .origin-small{font-size:17px;fill:#cce0cd}.origin-chemistry .molecular-atom text{stroke:none}.origin-chemistry .origin-closeup{transform-origin:center}.amino-chemistry text{font-family:SoupPixel,monospace;font-weight:400;paint-order:stroke;stroke:#14343b;stroke-width:3px;stroke-linejoin:round}.amino-chemistry .amino-caption{font-size:23px;fill:#f0dfaf;letter-spacing:.1px}.amino-chemistry .amino-small{font-size:18px;fill:#cce0cd}.amino-chemistry .amino-carbon-id{font-size:17px;fill:#f1bf69;stroke-width:4px}.amino-chemistry .amino-charge{font-size:21px;fill:#f0dfaf;stroke-width:3px}.amino-chemistry .molecular-atom text,.amino-chemistry [data-element=electron] text{stroke:none}.amino-chemistry .amino-environment .molecular-atom text{font-size:15px}.sugar-chemistry text{font-family:SoupPixel,VT323,monospace;font-weight:400;paint-order:stroke;stroke:#14343b;stroke-width:3px;stroke-linejoin:round}.sugar-chemistry .sugar-caption{font-size:23px;fill:#f0dfaf;letter-spacing:.1px}.sugar-chemistry .sugar-small{font-size:18px;fill:#cce0cd}.sugar-chemistry .sugar-carbon-id{font-size:16px;fill:#f1bf69;stroke-width:4px}.sugar-chemistry .sugar-hydrogens{font-size:17px;fill:#f0dfaf}.sugar-chemistry .molecular-atom text,.sugar-chemistry [data-element=electron] text{stroke:none}.sugar-chemistry .sugar-environment,.sugar-chemistry .sugar-pool-remainder{pointer-events:none}.molecular-glyph{overflow:visible;display:block;filter:drop-shadow(0 3px 0 #10292b80);flex-shrink:0;image-rendering:auto}.molecular-glyph text,.mechanism-scene text{font-family:SoupPixel,VT323,monospace;paint-order:stroke;stroke-linejoin:round}.mechanism-scene{width:100%;height:100%;min-height:260px;display:block;overflow:visible}.mechanism-scene .scene-caption{fill:#f0e0ab;font-size:19px;letter-spacing:.3px}.mechanism-scene .scene-small{fill:#b5cec3;font-size:15px}.mechanism-scene .scene-heading{fill:#f3d58d;font-size:25px}.mechanism-scene .scene-water{fill:#4da4ad;opacity:.08}.mechanism-scene .scene-pointer{fill:none;stroke:#e9cb83;stroke-width:3;stroke-dasharray:5 5}.mechanism-scene .scene-machine{stroke:#152f36;stroke-width:4;fill:#b9a6e4}.mechanism-scene .scene-track{fill:none;stroke:#f9d26c;stroke-width:3;stroke-dasharray:5 5}.mechanism-scene .scene-bond{stroke:#e8d4a0;stroke-width:4}.mechanism-scene .scene-arrow{fill:none;stroke:#9bd4c7;stroke-width:3}.mechanism-scene .scene-reservoir{fill:#1b4246;stroke:#587e78;stroke-width:2;stroke-dasharray:7 5}.world-piece:not(.held)>.molecular-glyph{animation:molecular-drift 5.2s steps(14,end) infinite;transform-origin:center}.world-piece:nth-of-type(3n)>.molecular-glyph{animation-delay:-1.7s}.world-piece:nth-of-type(3n+1)>.molecular-glyph{animation-delay:-3.1s}.world-piece.held>.molecular-glyph{transform:rotate(-4deg) scale(1.08)}@keyframes molecular-drift{0%,to{transform:translate(0) rotate(-1deg)}32%{transform:translate(2px,-3px) rotate(1deg)}68%{transform:translate(-2px,1px) rotate(0)}}@media(prefers-reduced-motion:reduce){.world-piece:not(.held)>.molecular-glyph{animation:none}}.category-film{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100dvh;max-width:none;max-height:none;border:0;padding:0;margin:0;background:#0a222c;color:#f0dfaf;overflow:hidden;font-family:SoupPixel,monospace;isolation:isolate}.category-film::backdrop{background:#071820}.category-film-world,.category-film-shade{position:absolute;top:-3%;right:-3%;bottom:-3%;left:-3%;z-index:-2;background-size:cover;background-position:center;image-rendering:pixelated;will-change:transform}.category-film-shade{z-index:-1;top:0;right:0;bottom:0;left:0;background:linear-gradient(#071820d9,transparent 24%,#07182055 65%,#071820f5)}.category-film header{position:absolute;top:0;left:0;right:0;padding:24px 32px;display:flex;align-items:center;gap:20px;z-index:4;background:linear-gradient(#071820e8,transparent)}.category-film header span{font-size:11px;letter-spacing:2px;color:#a5dcc6}.category-film h1{font-size:clamp(20px,3vw,34px);line-height:1.3;font-weight:400;margin:0}.category-film header button{margin-left:auto;white-space:nowrap;background:#153b43;border:2px solid #9bb49a;color:#f0dfaf;font:14px SoupPixel,monospace;padding:10px 15px}.category-film-shot{position:absolute;top:90px;right:6%;bottom:150px;left:6%;display:flex;align-items:center;justify-content:center;animation:category-shot-enter .65s ease-out;overflow:hidden}.category-hero{position:relative;display:grid;place-items:center;width:420px;height:340px;filter:drop-shadow(0 8px 0 #071820)}.category-orbit{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center}.category-orbit span{position:absolute;background:#dce3c2;color:#102b35;border:3px solid #18353e;padding:10px;font:23px SoupPixel,monospace}.category-reaction-camera{width:100%;height:100%;display:flex;justify-content:center;align-items:center}.category-reaction-camera>svg{width:100%;height:100%;max-height:100%;background:none}.category-cell{width:100%;height:100%;overflow:visible}.category-cell text{font-family:SoupPixel,monospace;font-size:18px;fill:#f0dfaf}.category-film footer{position:absolute;bottom:0;left:0;right:0;display:flex;flex-direction:column;align-items:center;padding:15px 5% 26px;z-index:4;background:linear-gradient(transparent,#071820e6 25%)}.category-subtitle{max-width:920px;font:clamp(15px,1.7vw,22px)/1.55 SoupPixel,monospace;text-align:center;background:#0a2631e8;padding:10px 22px;margin:0 0 14px;text-shadow:2px 2px #071820}.category-film-track{height:4px;width:min(700px,80%);background:#647e7140}.category-film-track i{display:block;height:100%;background:#efb66c}.category-film footer button{font:14px SoupPixel,monospace;background:#e6c17f;color:#142e37;border:2px solid #f0dfaf;margin-top:12px;padding:8px 20px}.category-about{font-family:SoupPixel,monospace!important}.category-film .mechanism-quiet-note{display:none}@keyframes category-shot-enter{0%{opacity:0;transform:translate(35px) scale(.96)}to{opacity:1;transform:translate(0) scale(1)}}@media(max-width:700px){.category-film header{padding:15px;gap:10px;flex-wrap:wrap}.category-film header span{display:none}.category-film header button{font-size:11px;padding:8px}.category-film-shot{top:85px;right:0;bottom:180px;left:0}.category-subtitle{font-size:15px;padding:8px 12px}.category-hero{width:320px}.category-film footer{padding-bottom:18px}}@media(prefers-reduced-motion:reduce){.category-film-shot{animation:none}}.category-chemistry-art{width:100%;height:100%;overflow:visible}.category-chemistry-art text{font-family:SoupPixel,monospace}.category-film .category-reaction-camera{will-change:transform}@media(max-height:500px){.category-film header{padding:9px 18px}.category-film h1{font-size:20px}.category-film-shot{top:52px;right:1%;bottom:100px;left:1%}.category-film footer{padding:5px 3% 10px}.category-subtitle{font-size:13px;line-height:1.35;margin-bottom:6px;padding:6px 12px;max-width:800px}.category-film footer button{margin-top:4px;padding:4px 12px}}@media(prefers-reduced-motion:reduce){.category-film-world,.category-reaction-camera{transform:none!important}}.category-film svg text:not([fill="#152f36"]){paint-order:stroke fill;stroke:#0a2631;stroke-width:3px;stroke-linejoin:round}.category-playback-controls{display:flex;justify-content:center;gap:12px}.category-film[data-paused=true] *,.category-film[data-paused=true] *:before,.category-film[data-paused=true] *:after{animation-play-state:paused!important}.category-film-shot{bottom:205px}@media(max-width:700px){.category-film-shot{bottom:230px}}@media(max-height:500px){.category-film-shot{bottom:145px}.category-subtitle{font-size:12px}}.category-film .category-film-shot{animation:none}@media(max-height:500px)and (min-width:500px){.category-film header{padding:8px 14px;gap:10px}.category-film header>span{display:none}.category-film h1{font-size:17px}.category-film header button{padding:5px 9px;font-size:12px}.category-film-shot{top:48px;right:35%;bottom:8px;left:0}.category-film footer{left:65%;top:48px;bottom:8px;padding:5px 8px;justify-content:center;background:#071820cc}.category-subtitle{font-size:12px;line-height:1.4;padding:4px;margin-bottom:8px}.category-playback-controls{gap:6px}.category-film footer button{font-size:11px;padding:6px 9px}}.investigation-guide{max-width:680px;margin:8px 0 0;color:#f0dfaf;font-family:SoupPixel,monospace}.quest-strip{pointer-events:auto}.location-discoveries{display:flex;align-items:center;gap:10px;font-size:12px;line-height:1.5}.location-discoveries [role=progressbar]{flex:1;min-width:60px;max-width:220px;height:9px;border:1px solid #9bb49a;background:#0b252d}.location-discoveries i{display:block;height:100%;background:#a5dcc6;box-shadow:inset 0 -2px #527c70;transition:width .6s steps(12)}.quest-strip{margin-top:9px;border-left:3px solid #efb66c;background:#102b35d9;font-size:13px;padding:7px 12px}.quest-strip summary{cursor:pointer;display:flex;align-items:center;gap:10px;list-style:none}.quest-strip summary::-webkit-details-marker{display:none}.quest-strip summary:after{content:"▾";margin-left:auto}.quest-strip[open] summary:after{content:"▴"}.quest-strip small{color:#a5dcc6}.quest-seal{color:#efb66c}.quest-strip p{font-size:13px!important;line-height:1.5!important;margin:10px 0!important}.quest-strip ul{list-style:none;margin:8px 0;padding:0;display:grid;gap:6px}.quest-strip li{display:flex;gap:9px;line-height:1.4}.quest-strip li[data-done=true]{color:#a5dcc6}.quest-strip li span{color:#efb66c}.hint-message{margin:5px 0 10px;padding:8px 12px;border-left:3px solid #a5dcc6;background:#102b35e8;color:#f0dfaf;font:13px/1.5 SoupPixel,monospace;max-width:680px}.habitat-dock button[data-hint=true]{outline:3px solid #efb66c;animation:hint-breathe 1.2s ease-in-out infinite}.habitat-discoveries{display:block;font-size:10px!important;margin-top:4px}.laboratory-connection{border-top:2px solid #aa9870;margin-top:20px;padding-top:14px}.laboratory-connection h3{font-size:18px;margin:0 0 10px}.laboratory-connection p{font:16px/1.6 SoupPixel,monospace}.laboratory-connection .lab-question{color:#446356;border-left:3px solid #718a78;padding-left:12px}@media(max-width:700px){.location-discoveries{font-size:10px;gap:6px}.quest-strip{font-size:12px}.investigation-guide{max-width:100%}}.habitat-progress{display:block!important;width:100%;height:4px;background:#8caa8b35;margin-top:5px}.habitat-progress i{display:block;height:100%;background:#a5dcc6;transition:width .6s steps(10)}.investigation-guide{pointer-events:auto;max-width:680px;position:relative;z-index:4}.quest-strip{margin-top:5px;padding:6px 10px;font-size:12px;position:relative}.quest-strip>summary{min-height:24px;gap:8px}.quest-strip>summary>span:nth-child(2){flex:1}.quest-strip>summary:after{margin-left:0}.quest-strip>summary small{flex-shrink:0;font-size:10px}.quest-expanded{position:absolute;z-index:8;left:-3px;right:0;top:100%;max-height:min(38vh,310px);overflow:auto;overscroll-behavior:contain;padding:5px 12px 10px;background:#102b35f7;border:1px solid #718a78;border-left:3px solid #efb66c;box-shadow:3px 4px #061a2380;scrollbar-color:#718a78 #102b35}.quest-strip .quest-checklist{font-size:11px;gap:5px;padding-bottom:9px;border-bottom:1px solid #718a7866}.quest-evidence h3{font:12px/1.5 SoupPixel,monospace;color:#a5dcc6;margin:9px 0 4px}.quest-strip .quest-evidence p,.quest-strip .evidence-apply p{font:12px/1.65 SoupPixel,monospace!important;max-width:none!important;margin:5px 0 9px!important;color:#f0dfaf}.investigation-guide .investigation-prior{font:12px/1.55 SoupPixel,monospace!important;margin:5px 0 0!important;max-width:none!important;padding:5px 10px;background:#102b35df;border-left:3px solid #a5dcc6;color:#e5e3ba}.evidence-materials{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0}.evidence-materials button{display:flex;align-items:center;gap:4px;max-width:210px;min-height:38px;padding:2px 6px;font-size:10px;text-align:left;box-shadow:none;border:1px solid #718a78;background:#17343d}.evidence-materials svg{flex-shrink:0}.evidence-sources,.evidence-apply{font:11px/1.6 SoupPixel,monospace;border-top:1px solid #718a7855;margin-top:8px;padding-top:6px}.quest-strip .evidence-sources summary,.quest-strip .evidence-apply summary{display:list-item;list-style:disclosure-closed;cursor:pointer;padding:2px 0;color:#a5dcc6}.quest-strip .evidence-sources[open]>summary,.quest-strip .evidence-apply[open]>summary{list-style:disclosure-open}.quest-strip .evidence-sources summary:after,.quest-strip .evidence-apply summary:after{content:none}.quest-strip .evidence-sources ul{display:block;margin:5px 0;list-style:none}.quest-strip .evidence-sources li{display:block;margin:6px 0;font-size:10px}.evidence-sources a{color:#c5d9bb;text-decoration:underline;text-underline-offset:3px}.evidence-choices{display:grid;gap:5px}.evidence-choices button{font-size:11px;text-align:left;padding:6px 8px;box-shadow:none;border-width:1px}.evidence-choices button[aria-pressed=true]{border-color:#efb66c;background:#3c514a;color:#ffe0a0}.quest-strip .evidence-response{border-left:2px solid #a5dcc6;padding-left:8px}.quest-expanded .location-discoveries{font-size:10px;color:#b4c1ae;border-top:1px solid #718a7855;padding-top:8px;margin:9px 0 4px}.investigation-guide button:focus-visible,.investigation-guide summary:focus-visible,.investigation-guide a:focus-visible{outline:2px solid #efb66c;outline-offset:3px}@media(max-width:700px){.quest-strip{font-size:11px}.investigation-guide .investigation-prior{font-size:10px!important;line-height:1.6!important}.quest-expanded{max-height:36vh}.evidence-materials button{font-size:9px;max-width:170px}}@media(min-width:701px){.soup-app:not(.is-live) .world-workspace:has(.investigation-guide){min-height:0}.soup-app:not(.is-live) .world-workspace:has(.investigation-guide)>.reaction-pool.has-vent-levels{min-height:300px;flex:1 1 300px}}.reaction-pool.has-vent-levels{min-height:580px;flex:1 0 580px;overflow:hidden}.vent-levels{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;display:grid;grid-template-rows:repeat(4,minmax(0,1fr));overflow:hidden;background:#12323e;isolation:isolate;pointer-events:none}.vent-landscape{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;image-rendering:pixelated;pointer-events:none}.vent-regional-light{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,#367eaa40,#367eaa34 19%,#5eb4aa2d 30%,#5eb4aa2d 44%,#d5a35130 56%,#d5a35130 69%,#c7743d45 81%,#b95d344d)}.vent-level{position:relative;isolation:isolate;overflow:hidden;background:transparent}.vent-level-current{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;shape-rendering:crispEdges}.vent-drift-grain{fill:#adc5b5;opacity:.23;animation:vent-grain-drift 11s linear infinite}.vent-hot .vent-drift-grain{fill:#f2b476;opacity:.3}.vent-cold .vent-drift-grain{fill:#a4c8e2;opacity:.27;animation-duration:19s}.vent-gas-trails{stroke:#e7b174;stroke-width:3;fill:none;opacity:.4;animation:vent-gas-shimmer 4s steps(5) infinite}.vent-mixing-stream,.vent-cold-stream{fill:none;stroke:#b1d9cc;stroke-width:2;opacity:.14;animation:vent-current-slide 9s ease-in-out infinite}.vent-cold-stream{stroke:#b9dbe6;opacity:.18;animation-duration:16s}.has-vent-levels>.pool-ripples{display:none}.has-vent-levels>.world-piece{z-index:2;min-height:96px;min-width:100px;max-width:160px}.has-vent-levels>.world-piece>svg{width:82px;height:82px}.has-vent-levels>.world-piece>span{font-size:12px;line-height:1.2;max-width:150px}.has-vent-levels>.world-piece.selected:after{bottom:-10px;font-size:17px}.has-vent-levels.showing-mechanism>.vent-levels,.has-vent-levels.trying-mixture>.vent-levels,.has-vent-levels:has(>.environment-playback)>.vent-levels{visibility:hidden}@keyframes vent-grain-drift{0%{transform:translate(0);opacity:0}20%,80%{opacity:.28}to{transform:translate(26px,-12px);opacity:0}}@keyframes vent-gas-shimmer{50%{opacity:.2;transform:translateY(-6px)}}@keyframes vent-current-slide{50%{transform:translate(14px);opacity:.24}}@media(max-width:1000px){.reaction-pool.has-vent-levels{min-height:560px;flex-basis:560px}.has-vent-levels>.world-piece{min-width:84px}.has-vent-levels>.world-piece>svg{width:78px;height:78px}.has-vent-levels>.world-piece>span{font-size:11px;max-width:120px}}@media(max-width:700px){.reaction-pool.has-vent-levels{min-height:600px;flex-basis:600px}.has-vent-levels>.world-piece>svg{width:82px;height:82px}.has-vent-levels>.world-piece>span{max-width:105px}}@media(prefers-reduced-motion:reduce){.vent-level-current *{animation:none!important}}.place-title .vent-stuck-hint{min-height:2.7em;max-width:94%;margin-top:7px;font-size:13px;line-height:1.45;color:#d7dfc5}@media(max-width:700px){.place-title .vent-stuck-hint{font-size:12px;min-height:3em;max-width:100%}}.environment-event-scene{position:relative;display:flex;flex:1;min-height:0;width:100%;flex-direction:column;align-items:center;pointer-events:none;font-family:SoupPixel,monospace}.environment-event-scene h2{flex:none;font-size:22px;font-weight:400;line-height:1.4;text-align:center;color:#f0dfaf;text-shadow:2px 2px #102b35;margin:0;padding:8px 10px}.environment-event-scene>svg{width:100%;flex:1;min-height:0;overflow:visible}.environment-event-scene>p{flex:none;max-width:88%;font-size:12px;line-height:1.65;text-align:center;color:#f0dfaf;text-shadow:2px 2px #102b35;margin:0;padding:6px 10px}.event-source-label{font:17px SoupPixel,monospace;fill:#f0dfaf;paint-order:stroke;stroke:#243e47;stroke-width:5px;stroke-linejoin:round;text-anchor:middle}@media(max-width:700px){.environment-event-scene h2{font-size:17px;padding:4px}.environment-event-scene>p{font-size:10px;max-width:96%;padding:4px}.event-source-label{font-size:20px}}.environment-playback{position:absolute;top:0;right:0;bottom:0;left:0;z-index:12;display:flex;flex-direction:column;align-items:center;padding:8px 10px 12px;background:transparent;pointer-events:auto}.environment-playback-actions{display:flex;justify-content:center;gap:12px;flex:none;margin-top:6px}.environment-playback-actions>button{font-size:12px;padding:7px 15px}.reaction-pool:has(>.environment-playback)>.world-piece,.reaction-pool:has(>.environment-playback)>.pipeline-landscape,.reaction-pool:has(>.environment-playback)>.empty-pool,.reaction-pool:has(>.environment-playback)>.pool-ripples{visibility:hidden}@media(max-width:700px){.environment-playback{padding:5px 6px 8px}.environment-playback-actions{margin-top:3px}.environment-playback-actions>button{font-size:10px;padding:6px 12px}}.environment-event-scene{isolation:isolate;overflow:hidden}.environment-source-world{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;overflow:hidden;pointer-events:none}.environment-source-world>img{width:100%;height:100%;object-fit:cover;image-rendering:pixelated;transform-origin:60% 55%}.environment-source-world:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(#102b3533,transparent 28%,transparent 72%,#102b3580)}.reflection-dialog{position:fixed;top:0;right:0;bottom:0;left:0;width:calc(100vw - 32px);height:calc(100dvh - 32px);max-width:1400px;max-height:none;margin:auto;padding:0;border:4px solid #183c39;background:#dccb9e;color:#223b35;box-shadow:0 0 0 4px #b59d69,0 0 0 8px #152e2e;font-family:inherit;overflow:hidden}.reflection-dialog::backdrop{background:#071c20dd}.reflection-dialog *{box-sizing:border-box}.reflection-sheet{height:100%;display:flex;flex-direction:column;background:linear-gradient(90deg,#bca67733 1px,transparent 1px) 0 0/8px 8px,#e3d3a9}.reflection-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px 30px 16px;border-bottom:3px solid #71806a}.reflection-heading small{text-transform:uppercase;letter-spacing:.14em;font-size:12px}.reflection-heading h2{margin:6px 0 0;font-size:clamp(24px,3vw,36px);line-height:1.2}.reflection-dialog button,.reflection-dialog select{font:inherit;color:inherit;cursor:pointer;border:3px solid #526a53;border-radius:0;background:#e9dcb8;box-shadow:3px 3px #a18e65;padding:10px 15px;touch-action:manipulation}.reflection-dialog button:hover{background:#f3e8cb;border-color:#1d554d}.reflection-dialog button:focus-visible,.reflection-dialog select:focus-visible{outline:3px solid #c37c35;outline-offset:3px}.reflection-dialog button:active{transform:translate(2px,2px);box-shadow:1px 1px #a18e65}.reflection-close{white-space:nowrap;font-size:14px!important}.reflection-close span{font-size:24px;vertical-align:middle;margin-left:12px}.reflection-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:14px 30px 0;border-bottom:3px solid #71806a}.reflection-tabs button{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;border-bottom:0;box-shadow:none;min-height:62px;background:#c7c299;font-size:14px;padding:10px 8px}.reflection-tabs button[aria-current=page]{background:#f2e5c1;border-color:#244f44;transform:translateY(3px);padding-bottom:13px}.reflection-tabs button>span{font-weight:700}.reflection-tabs small{font-size:10px;font-weight:400;opacity:.72;width:100%}.reflection-body{padding:24px 30px 36px;overflow:auto;flex:1;min-height:0;scrollbar-color:#66775b #d7c69b}.reflection-instruction{font-size:18px;margin:0 0 16px}.reflection-trial-picker{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-bottom:24px}.reflection-trial-picker button{text-align:left;display:flex;flex-direction:column;gap:6px;font-size:13px;line-height:1.4}.reflection-trial-picker button strong{font-size:15px}.reflection-dialog button.chosen{background:#b9c6a2;border-color:#22594b;box-shadow:3px 3px #607d5e}.reflection-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}.reflection-record{padding:18px 22px;border-top:2px solid #8a9376;border-bottom:2px solid #8a9376;background:#f3e5be77;margin:0 0 22px}.reflection-record header{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:14px;padding-bottom:14px}.reflection-record header>span{font-weight:700}.reflection-mixture{display:flex;align-items:center;justify-content:center;gap:12px;min-height:94px}.reflection-mixture>span:not(.reflection-specimen){font-size:24px}.reflection-specimen{display:flex;align-items:center;flex-direction:column;justify-content:center;gap:8px;max-width:120px;text-align:center;font-size:12px;font-weight:700;line-height:1.4}.reflection-specimen img{width:64px;height:64px;object-fit:contain;image-rendering:pixelated}.reflection-record p{font-size:16px;line-height:1.55;margin:16px 0 0;max-width:80ch}.reflection-no-result{font-size:14px!important;max-width:110px;text-align:center}.reflection-question h3{font-size:22px;line-height:1.4;margin:8px 0 18px}.reflection-choices{display:grid;gap:12px}.reflection-choices button{display:flex;align-items:baseline;gap:14px;text-align:left;font-size:16px;line-height:1.5;padding:14px 18px}.reflection-choices button>span{color:#52745b}.reflection-feedback,.reflection-selection-note{border-left:5px solid #9d773e;padding:12px 16px;line-height:1.6;font-size:16px;background:#f2e5c1}.reflection-feedback.supported{border-left-color:#487852}.reflection-record-choice{display:flex;align-items:center;gap:16px;margin-bottom:22px}.reflection-record-choice select{max-width:70%;font-size:14px}.reflection-empty{max-width:540px;text-align:center;margin:clamp(30px,7vh,80px) auto}.reflection-empty>div{font-size:64px;color:#728c70}.reflection-empty h3{font-size:28px}.reflection-empty p{line-height:1.7;font-size:17px;margin-bottom:28px}.reflection-ending,.reflection-milestone{border-top:3px solid #758465;margin-top:28px;padding-top:20px;text-align:center}.reflection-ending h3,.reflection-milestone h3{font-size:26px;margin:6px 0}.reflection-ending p,.reflection-milestone p{line-height:1.6}@media(max-width:760px){.reflection-dialog{width:calc(100vw - 16px);height:calc(100dvh - 16px)}.reflection-heading{padding:16px;gap:12px}.reflection-heading h2{font-size:23px}.reflection-close{white-space:normal;font-size:12px!important;max-width:150px;padding:8px!important}.reflection-close span{margin-left:4px}.reflection-tabs{padding:10px 12px 0;gap:8px}.reflection-tabs button{font-size:13px;padding:10px 7px;gap:6px;flex-wrap:wrap}.reflection-tabs small{width:100%;font-size:10px}.reflection-body{padding:20px 16px}.reflection-pair{grid-template-columns:1fr;gap:0}.reflection-trial-picker{grid-template-columns:1fr}.reflection-record{padding:14px 10px}.reflection-record header{font-size:12px}.reflection-mixture{gap:6px}.reflection-specimen{max-width:95px;font-size:11px}.reflection-specimen img{width:56px;height:56px}.reflection-question h3{font-size:20px}.reflection-choices button{font-size:15px}.reflection-record-choice{align-items:flex-start;flex-direction:column;gap:8px}.reflection-record-choice select{max-width:100%;width:100%}}@media(max-width:540px){.reflection-tabs{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;padding:8px 8px 0}.reflection-tabs button{font-size:10px;line-height:1.35;min-height:56px;padding:6px 3px;gap:3px}.reflection-tabs small{display:none}.reflection-heading{padding:12px}.reflection-heading h2{font-size:20px}.reflection-heading small{font-size:10px}.reflection-heading .reflection-close{max-width:115px;font-size:11px!important}.reflection-specimen{max-width:85px}.reflection-specimen img{width:48px;height:48px}}@font-face{font-family:SoupPixel;src:url(/education/primordial-soup/play/assets/labchest-pixel-CugJ6RTx.ttf) format("truetype");font-display:swap}:root{font-family:SoupPixel,monospace;color:#f0dfaf;background:#102b35;font-synthesis:none;font-size:16px;--ink:#243038;--paper:#f0dfaf;--mint:#a5dcc6;--gold:#efb66c;--stone:#354451;--edge:#071b25}*{box-sizing:border-box}body{margin:0}button,a,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;border:2px solid #51636a;background:#263e49;padding:10px 14px;box-shadow:0 3px 0 var(--edge);line-height:1.35}button:hover{border-color:var(--gold);background:#354d53}button:active{transform:translateY(2px);box-shadow:0 1px 0 var(--edge)}button:disabled{opacity:.35;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--gold);outline-offset:4px}a{color:inherit}h1,h2,h3,p{margin:0}button img{pointer-events:none;-webkit-user-select:none;user-select:none}button span,button small{pointer-events:none}.eyebrow{font-size:10px;letter-spacing:2px;color:#b9c6ba}.soup-app{height:100svh;min-height:650px;position:relative;overflow:hidden;isolation:isolate;display:flex;flex-direction:column}.world-scene{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-3;background-size:cover;background-position:center}.world-scene:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#061c3580,transparent 50%),linear-gradient(0deg,#071e36b0,transparent 30%)}.topbar{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 28px;border-bottom:2px solid #a7c6b52b;background:#0c2633c9;z-index:2;flex-shrink:0}.home-link{text-decoration:none;font-size:12px;color:#bccfc9}.home-link:hover{color:var(--gold)}.wordmark{font-size:22px;letter-spacing:2px;color:#dfe5c7}.wordmark b{color:var(--gold)}.topbar nav{display:flex;gap:10px}.topbar button{font-size:12px}.topbar button small{font-size:11px;color:#efb66c;margin-left:8px}.topbar .gear{font-size:20px;padding:6px 13px}.game-layout{display:flex;flex:1;min-height:0;padding:18px 24px 8px;gap:22px}.material-shelf{width:218px;flex-shrink:0;display:flex;flex-direction:column;background:#102a32eb;border:3px solid #526260;box-shadow:5px 5px #081b26;min-height:0}.shelf-title{padding:17px 15px 12px;display:flex;flex-direction:column;gap:7px}.shelf-title strong{font-size:16px;font-weight:400}.shelf-filters{display:flex;padding:0 10px 12px;gap:3px}.shelf-filters button{padding:5px 6px;font-size:12px;border-width:1px;flex:1}.shelf-filters .active{background:#c8bf97;color:#172e38;border-color:#f0dfaf}.inventory{display:grid;grid-template-columns:1fr 1fr;align-content:start;gap:6px;padding:10px;overflow-y:auto;scrollbar-color:#a7b8a3 #102a32;scrollbar-width:thin}.inventory-item{min-height:115px;padding:8px 3px 6px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:#1a3540;border-color:#45626a;box-shadow:0 2px #061b25;touch-action:none;-webkit-user-select:none;user-select:none}.inventory-item span{font-size:11px;text-align:center;line-height:1.45;max-width:100%;overflow-wrap:anywhere}.inventory-item small{font-size:8px;text-transform:uppercase;color:#8eaea9;letter-spacing:1px}.inventory-item.found{border-bottom-color:var(--gold)}.shelf-foot{font-size:9px;color:#a7b8aa;padding:12px 10px;margin-top:auto;border-top:1px solid #446067;line-height:1.6;text-align:center}.empty-shelf{grid-column:1/-1;font-size:12px;line-height:1.7;padding:20px 5px;color:#acbdb5}.world-workspace{flex:1;min-width:0;display:flex;flex-direction:column;position:relative}.place-title{padding:8px 12px;pointer-events:none;text-shadow:2px 3px #10232e}.place-title h1{font-size:28px;letter-spacing:1px;margin-top:9px;font-weight:400}.place-title p{font-size:12px;color:#ccdbd0;margin-top:9px}.reaction-pool{position:relative;flex:1;min-height:260px;touch-action:none}.pool-ripples{position:absolute;width:80%;height:65%;left:10%;top:20%;border:2px solid #b2dbb71c;box-shadow:0 12px #a7d7c508,0 -12px #a7d7c508;clip-path:polygon(10% 0,85% 0,100% 25%,100% 75%,87% 100%,12% 100%,0 75%,0 25%);pointer-events:none}.world-piece{position:absolute;transform:translate(-50%,-50%);min-width:95px;max-width:135px;min-height:110px;padding:8px 10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:2px solid #70969099;background:#133a43d9;box-shadow:4px 5px #081f2c80;touch-action:none;-webkit-user-select:none;user-select:none;z-index:2}.world-piece span{font-size:11px;line-height:1.45;text-align:center;max-width:115px}.world-piece:hover{transform:translate(-50%,-53%);border-color:#d4dfac;background:#254c52}.world-piece:active{transform:translate(-50%,-50%)}.world-piece.selected{border-color:#f1c77f;background:#3b5757;outline:3px solid #efb66c30}.world-piece.held{opacity:.25}.first-instruction{position:absolute;left:0;right:0;bottom:12px;text-align:center;color:#e2e8cb;pointer-events:none;font-size:14px;text-shadow:2px 2px #152e3e}.first-instruction small{display:block;font-size:10px;color:#b4cfc6;margin-top:8px}.drag-arrow{display:block;font-size:40px;color:var(--gold);margin-bottom:10px}.empty-pool{position:absolute;left:10%;right:10%;top:45%;text-align:center;font-size:14px;color:#c4d7cd}.bench-tools{display:flex;justify-content:flex-end;gap:8px;margin:10px 0 15px;min-height:30px}.bench-tools button{font-size:10px;padding:7px 10px;background:#102e39dd;border-color:#4b6d70}.habitat-dock{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:8px}.habitat-dock button{display:flex;align-items:center;gap:12px;text-align:left;min-height:76px;padding:11px 15px;background:#152e39e8;border:2px solid #546567}.habitat-dock .active{border-color:#efb66c;background:#3d4e49;box-shadow:0 3px #172b34,inset 0 -4px #b49d6920}.habitat-glyph{font-size:29px;color:#a5dcc6}.habitat-glyph.shore{color:#efb66c}.habitat-glyph.vent{color:#eaa38c}.habitat-dock strong{display:block;font-size:12px;font-weight:400;margin-bottom:7px}.habitat-dock small{display:block;color:#a8bbb4;font-size:8px;line-height:1.5}.expedition-strip{display:flex;align-items:center;gap:25px;padding:10px 28px 14px;font-size:11px;color:#c2d4c6;height:58px}.expedition-strip .quiet{color:#8aa7a4}.expedition-strip button{margin-left:auto;border-color:#b79d66;color:#efcf8c;font-size:11px;padding:8px 13px;background:#243e3ecc}.expedition-strip button span{margin-left:20px}.result-slip{position:absolute;right:32px;top:112px;width:295px;padding:20px 20px 16px;background:#f0dfaf;color:var(--ink);box-shadow:5px 5px #142c32;border:3px solid #b29b6a;z-index:6;animation:slip-in .25s steps(5)}.result-slip .eyebrow{color:#6a654b;font-size:9px}.result-slip.new{border-color:#e7bd74}.result-heading{display:flex;align-items:center;gap:9px;margin:13px 0 10px}.result-heading h2{font-size:19px;font-weight:400;line-height:1.45}.result-slip p{font:15px/1.6 Georgia,serif}.result-slip small{display:block;margin-top:12px;font-size:8px;color:#756b51}.result-slip>button:not(.slip-close){font-size:10px;padding:7px 0;box-shadow:none;border:0;background:none;color:#3b6558;margin-top:10px}.slip-close{position:absolute;right:6px;top:4px;border:0;box-shadow:none;background:none;color:#635337;padding:0 5px;font-size:22px}.slip-close:hover{color:#000;background:none}.drag-ghost{position:fixed;z-index:100;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;pointer-events:none;filter:drop-shadow(4px 5px 0 #061b2580)}.drag-ghost span{background:#16343a;color:#f0dfaf;padding:5px 7px;font-size:11px}.notice,.save-error{position:fixed;bottom:80px;left:50%;transform:translate(-50%);z-index:80;background:#e4d4a7;color:#263039;border:3px solid #baa16f;padding:14px 22px;box-shadow:4px 4px #102b35;line-height:1.6;font-size:12px;max-width:90vw}.save-error{bottom:8px;width:max-content;background:#efd2ad}.save-error button{font-size:11px;margin-left:12px}.paper-sheet{position:fixed;top:0;right:0;bottom:0;left:0;width:min(720px,94vw);max-width:none;max-height:90svh;color:#243038;background:#f0dfaf url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAIAAAAlC+aJAAACJUlEQVR4nNVaTW+DMAzNkA/WkKoJaff9//v+zX7BDj1UovJxUtkYJeB82U7yTlUB44ftF8fw8v316XoGuK6A47T8oPm6J7AcWw+cXcmcYwDybg2Rbsk6Tffb8gNfL8IptJgut8tD0D5kmPYTsQrw4UZOEdf1e+dGHypEfzXj50ijBPBZ9JjEFiYgJS+0yVJe34UJaMgXsSVnmkIZGo0hxQPL4suID4UUD1J1nc/I/cnKC6JbCCTpeiOLwIrBdY7BdY7BdY7BdY7B9QMcp22L0XQvFC+AYgQyNglJS8oZxAhk+BFzSbD7gGYb/cM//aBVJoCJvYYftJ5U6BBaETCYI9Ej/RIIBOtpm6AGPR8+PEkgcFxkG/Ws0qhC4fUGThOrVB2sxMgqlSIBmwEe6Jm2KQnQMGo5PAXBZf//TDm/KXRTiH+iOE72QomhXgN40us/BgOSvJw8IGDpK8ZVC3NUS4UiC4YydhHPHQ3sDry9f5RYLw8jhebbp+8HlgPVB28YzTy5G22tu8bUbrSk8dYLLGgYNdMxHKe+t5Q0X5smQPebv6r2tB/AiFSsQ0DxWwlBMEMAwSofnDKCSRw5ha6xpczuJuZrN7PRIA5d30a1dQJBVtDIxz/ZgEK/9WagGPdk60/miN36RH1qkH1XETnHEyORjyaTQInrIq/GaqqQL/MlD0WdAF+LmBvJ1aw6Aa3XM/Ov2fr7AUzpfHzUX4mpLET1I1CIH8lqE5+anfUvAAAAAElFTkSuQmCC);border:4px solid #a18b5d;box-shadow:0 0 0 4px #f6e6b9,10px 10px #071b2580;padding:27px 32px;scrollbar-color:#8f805b #e2d2a6}.paper-sheet::backdrop{background:#04171eb8}.paper-sheet.wide{width:min(1150px,94vw)}.paper-sheet button{color:#243038;border-color:#8f7d55;background:#e1cda0;box-shadow:0 3px #877652;font-size:12px}.paper-sheet button:hover{background:#f6e7bf;border-color:#3b6558}.paper-sheet p{font:16px/1.65 Georgia,serif;margin:12px 0}.sheet-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:20px;border-bottom:2px solid #8f7d5566;margin-bottom:24px}.sheet-heading .eyebrow{color:#756b51;font-size:9px}.sheet-heading h2{font-size:25px;font-weight:400;margin-top:12px}.sheet-heading .close-sheet{background:none;border:0;box-shadow:none;font-size:28px;padding:4px 8px}.journal-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px}.journal-tabs .active{background:#bcb183;border-color:#546550}.journal-tabs button:last-child{margin-left:auto}.journal-intro{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:20px}.journal-intro p{font-size:15px}.trial-records{display:flex;flex-direction:column;gap:8px}.trial-records article{display:flex;border-bottom:1px solid #8f7d5566;gap:12px;align-items:center;padding:8px 0}.trial-records article.chosen{background:#c2c59b77}.trial-records .trial-select{display:grid;grid-template-columns:40px 1fr 1fr;align-items:center;gap:16px;flex:1;text-align:left;background:transparent;border:0;box-shadow:none;padding:10px}.trial-select>span{min-width:0}.trial-select strong{font-size:12px;font-weight:400;line-height:1.6}.trial-select small{display:block;font-size:9px;color:#77745a;margin-top:7px}.trial-number{font-size:20px;color:#7f765b}.trial-output{display:flex;align-items:center;gap:10px}.trial-records article>button:last-child:not(.trial-select){font-size:9px;padding:9px;flex-shrink:0}.comparison-board{display:grid;grid-template-columns:1fr 1fr;gap:20px;border-top:2px solid #8f7d5577;border-bottom:2px solid #8f7d5577;padding:20px 0;margin-bottom:20px}.comparison-board article{padding:20px;background:#f9e9bf;border:1px solid #b2a078}.comparison-board .eyebrow{color:#776f54;font-size:8px}.trial-molecules{display:flex;align-items:center;gap:12px;margin:20px 0}.comparison-board h3{font-size:16px;font-weight:400}.collection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:14px}.collection-grid button{display:flex;align-items:center;flex-direction:column;gap:10px;min-height:155px}.collection-grid strong{font-weight:400;font-size:12px;line-height:1.6}.collection-grid small{font-size:9px;color:#756b51}.blank-notes{padding:60px 30px;text-align:center}.blank-notes h3{font-size:20px;font-weight:400}.blank-notes button{margin-top:25px}.specimen-page{text-align:center}.specimen-page>.eyebrow{display:block;color:#716b51;margin-top:20px}.specimen-page .specimen-description{font-size:21px;line-height:1.7;max-width:520px;margin:20px auto}.specimen-page h3{text-align:left;font-size:16px;margin:28px 0 12px;font-weight:400}.observation-entry{text-align:left;padding:12px 0;border-top:1px solid #9a8b6580}.observation-entry strong{font-size:11px;font-weight:400;line-height:1.7}.margin-note{color:#736347;font-style:italic}.science-intro h3{font-size:21px;line-height:1.6;font-weight:400}.source-heading{font-size:17px;font-weight:400;margin:30px 0 20px;line-height:1.6}.source-entry{border-bottom:1px solid #9a8b6580;padding:16px 0}.source-entry a,.source-entry strong{font-size:13px;line-height:1.8;color:#24594d}.source-entry strong small{font-size:9px;color:#786c50}.settings label{display:flex;align-items:center;justify-content:space-between;margin:27px 0;font-size:14px}.settings input{accent-color:#466f65;width:60%}.settings-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px;border-top:1px solid #9a8b6580;padding-top:25px}.reset-confirm{border:2px solid #997b58;padding:20px;margin-top:25px}.reset-confirm h3{font-size:16px;font-weight:400}.reset-confirm button{margin:8px 8px 0 0}.opening{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;background:linear-gradient(90deg,#102734f5,#102b35e8 42%,#102b3544);display:flex;align-items:center;padding:6vw}.opening-content{max-width:570px;z-index:2}.opening .eyebrow{font-size:10px;letter-spacing:3px;color:#c1c8ad}.opening h1{font-size:clamp(33px,5.4vw,76px);font-weight:400;line-height:1.3;letter-spacing:1px;margin:25px 0 15px}.opening h1 em{font-style:normal;color:#efb66c;font-size:1.45em}.opening p{font:18px/1.8 Georgia,serif;color:#c9dace;margin:22px 0}.opening .opening-tagline{font-family:SoupPixel,monospace;font-size:20px;line-height:1.6;color:#f0dfaf}.begin-button{background:#e5bd79;color:#20373b;border:3px solid #f8da98;box-shadow:5px 6px #0b202a;padding:17px 25px;font-size:17px;margin:14px 0 28px}.begin-button:hover{background:#f6d395;border-color:#fff0be}.begin-button span{margin-left:24px}.opening-content>small{display:block;font-size:10px;line-height:1.8;color:#96b7ac;max-width:400px}.opening-orbit{position:absolute;right:5vw;top:20%;width:35vw;height:55vh;pointer-events:none}.opening-orbit>div{position:absolute;left:calc(20% + var(--i)*13%);top:calc(10% + var(--i)*20%);filter:drop-shadow(8px 9px #071b2544);animation:soup-bob 6s steps(10) infinite;animation-delay:calc(var(--i)*-1s)}.opening-orbit>div:nth-child(2){left:55%;top:20%}.opening-orbit>div:nth-child(3){left:5%;top:60%}.planet-rings{position:absolute;top:15%;right:15%;bottom:15%;left:15%;border:3px solid #9ccebb20;box-shadow:0 30px #91c1b10c;z-index:-1;clip-path:polygon(20% 0,80% 0,100% 20%,100% 80%,80% 100%,20% 100%,0 80%,0 20%)}@keyframes slip-in{0%{transform:translateY(-10px);opacity:0}to{transform:none;opacity:1}}@media(min-width:1600px){.game-layout{padding-left:50px;padding-right:50px;gap:35px}.material-shelf{width:250px}.inventory-item{min-height:135px}.world-piece{min-width:115px;min-height:130px}.world-piece span{font-size:13px}.result-slip{right:60px;top:125px;width:340px}.reaction-pool{min-height:400px}}@media(max-width:1000px){.topbar{padding:0 18px}.wordmark{font-size:17px}.game-layout{padding:12px;gap:12px}.material-shelf{width:185px}.inventory{padding:7px;gap:5px}.inventory-item{min-height:105px}.inventory-item span{font-size:10px}.place-title h1{font-size:23px}.habitat-dock{gap:6px}.habitat-dock button{padding:9px;gap:7px}.habitat-dock strong{font-size:10px}.habitat-dock small{font-size:7px}.result-slip{right:20px;width:260px}.world-piece{min-width:84px;max-width:112px}.world-piece span{font-size:9px}.bench-tools button{font-size:9px;padding:6px 8px}}@media(max-width:700px){.soup-app{height:auto;min-height:100svh;overflow:visible}.topbar{height:65px;padding:0 12px;gap:8px}.home-link{font-size:9px}.wordmark{font-size:13px;letter-spacing:0}.topbar button{font-size:9px;padding:7px}.topbar button>span{display:none}.topbar .gear{font-size:18px}.game-layout{flex-direction:column-reverse;padding:8px;gap:12px;flex:none}.world-workspace{min-height:540px}.reaction-pool{min-height:290px}.place-title{padding:10px}.place-title h1{font-size:23px}.place-title p{font-size:9px}.material-shelf{width:100%;max-height:350px}.shelf-title{padding:12px;flex-direction:row;align-items:center;justify-content:space-between}.shelf-title strong{font-size:12px}.shelf-filters{padding-bottom:4px;width:250px}.inventory{grid-template-columns:repeat(4,1fr);max-height:235px}.inventory-item{min-height:100px}.shelf-foot{padding:7px}.habitat-dock button{min-height:65px;padding:8px 5px;justify-content:center}.habitat-glyph{display:none}.habitat-dock strong{font-size:10px}.habitat-dock small{font-size:7px}.result-slip{position:fixed;top:auto;bottom:25px;left:12px;right:12px;width:auto;max-height:40vh;overflow:auto}.result-heading{margin:6px 0}.result-heading h2{font-size:17px}.result-slip p{font-size:14px}.expedition-strip{padding:12px;gap:15px;font-size:9px;height:auto;min-height:55px}.expedition-strip button{font-size:9px}.expedition-strip button span{margin-left:5px}.paper-sheet,.paper-sheet.wide{max-height:95svh;width:96vw;padding:20px 16px}.sheet-heading h2{font-size:21px}.sheet-heading .eyebrow{font-size:7px}.comparison-board{gap:8px}.comparison-board article{padding:12px 8px}.comparison-board .eyebrow{line-height:1.8}.trial-molecules{gap:2px}.trial-molecules img{width:35px;height:35px}.trial-records article{flex-direction:column;align-items:stretch;gap:4px}.trial-records .trial-select{grid-template-columns:25px 1fr 1fr;gap:10px;padding:8px 0}.trial-select strong{font-size:10px}.trial-select small{font-size:8px}.trial-output{flex-direction:column;align-items:flex-start;gap:2px}.journal-intro{flex-direction:column;align-items:flex-start}.journal-tabs{gap:7px}.journal-tabs button{font-size:10px}.journal-tabs button:last-child{margin-left:0}.opening{position:fixed;overflow:auto;padding:35px 25px;background:linear-gradient(90deg,#102734f5,#102b35aa)}.opening-content{max-width:95%;margin:auto 0}.opening h1{font-size:35px}.opening .eyebrow{font-size:8px;letter-spacing:2px}.opening p,.opening .opening-tagline{font-size:16px}.opening-orbit{right:5%;top:10%;opacity:.3;width:60vw}.begin-button{font-size:14px;padding:15px}.world-piece{min-height:100px}.first-instruction{font-size:11px}.first-instruction small{font-size:9px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.era-trail{display:flex;align-items:center;gap:20px;padding:10px 28px;background:#0e2934c9;border-bottom:1px solid #7a9c9633}.era-trail button{font-size:11px;background:transparent;border:0;box-shadow:none;padding:7px 5px;color:#adc3b9}.era-trail button span{color:#91aaa3;margin-right:8px;font-size:9px}.era-trail .active{color:#f5d69b;border-bottom:2px solid #e9bd79}.era-goal{font-size:9px;margin-left:auto;color:#aec6bb}.shelf-era-toggle{margin:0 10px 7px;padding:5px;font-size:9px;box-shadow:none;border:1px solid #52726e;background:#1c3941}.shelf-filters{flex-wrap:wrap}.shelf-filters button{flex:1 0 18%;font-size:11px}.inventory-item{min-height:128px}.chapter-ready{align-self:center;margin:0 0 15px;font-size:12px;padding:12px 22px;background:#324d4a;border:2px solid #e0bc7a;color:#f4d99d}.chapter-ready span{padding:0 10px}.chapter-page{text-align:center}.chapter-page>.eyebrow{color:#7d7151}.chapter-specimen{padding:25px}.chapter-page button{margin:15px 8px 0}.opening-content>small{max-width:480px}.inventory-item img{width:64px;height:64px}@media(max-width:1000px){.era-trail{gap:10px;padding:7px 16px}.era-trail button{font-size:10px}.era-goal{display:none}.shelf-filters button{flex-basis:18%;font-size:10px}}@media(max-width:700px){.era-trail{justify-content:space-between;gap:7px}.era-trail button{font-size:9px}.era-trail button span{font-size:8px;margin-right:4px}.shelf-filters{width:100%;flex-wrap:nowrap}.shelf-filters button{flex:1}.inventory-item{min-height:115px}.chapter-ready{font-size:10px;padding:9px;margin-bottom:12px}.game-layout{padding-top:0}}.inventory-item .tried-mark{color:#dfba7d;font-size:7px}.bench-tools .wonder-button{margin-right:auto;color:#d4d7af}.nudge-slip{align-self:center;background:#e5d2a7;color:#283c3d;position:relative;padding:14px 35px 14px 18px;box-shadow:3px 4px #0d2630;margin-bottom:15px;max-width:650px}.nudge-slip p{font:16px/1.6 Georgia,serif}.nudge-slip button{position:absolute;right:5px;top:5px;background:none;color:#3a514a;border:0;box-shadow:none;padding:0;font-size:20px}.was-tried{border-top-color:#ceaa6d}.habitat-dock strong{font-size:14px}.habitat-dock small{font-size:10px}.soup-app{min-height:700px}.inventory-item span,.world-piece span{font-size:12px}.bench-tools button{font-size:11px}.topbar button{font-size:13px}.shelf-foot{font-size:10px}.place-title p{font-size:13px;max-width:70%}@media(max-width:1000px){.habitat-dock strong{font-size:12px}.habitat-dock small{font-size:9px}.inventory-item span,.world-piece span{font-size:11px}.bench-tools button{font-size:9px}}@media(max-width:700px){.habitat-dock strong{font-size:11px}.habitat-dock small{font-size:8px}.topbar button{font-size:10px}.place-title p{max-width:90%;font-size:10px}.inventory-item span,.world-piece span{font-size:10px}}.world-scene{image-rendering:pixelated;image-rendering:crisp-edges;isolation:isolate}.molecule-icon{image-rendering:pixelated;image-rendering:crisp-edges;object-fit:contain;transform-origin:50% 72%;filter:drop-shadow(0 3px 0 #10263166);animation:primordial-float 3.6s steps(3,end) infinite}.molecule-icon:nth-child(3n){animation-delay:-1.2s}.molecule-icon[data-state=focus],:hover>.molecule-icon,:focus-visible>.molecule-icon{filter:drop-shadow(2px 0 #ecdfab) drop-shadow(-2px 0 #ecdfab) drop-shadow(0 2px #ecdfab) drop-shadow(0 -2px #ecdfab);animation:primordial-notice .45s steps(2,end) both}.molecule-icon[data-state=held],[data-held=true] .molecule-icon,.is-dragging .molecule-icon{animation:none;transform:translateY(-5px) rotate(-5deg);filter:drop-shadow(4px 7px 0 #10263188)}.molecule-icon[data-state=reaction],.is-reacting .molecule-icon{animation:primordial-react .65s steps(5,end) both}.molecule-icon[data-state=unavailable]{animation:none;filter:grayscale(.7);opacity:.45}.reaction-rings{position:absolute;top:10%;right:10%;bottom:10%;left:10%;pointer-events:none;border:2px solid #e9dba6;animation:primordial-ripple .7s steps(7,end) both;clip-path:polygon(20% 0,80% 0,80% 8%,92% 8%,92% 20%,100% 20%,100% 80%,92% 80%,92% 92%,80% 92%,80% 100%,20% 100%,20% 92%,8% 92%,8% 80%,0 80%,0 20%,8% 20%,8% 8%,20% 8%)}.pixel-weather,.world-sparks{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.pixel-weather:before,.pixel-weather:after{content:"";position:absolute;height:2px;width:28px;background:#c6dcc055;box-shadow:36px 12px #c6dcc033,130px 6px #c6dcc044,380px 13px #c6dcc033,490px -6px #c6dcc044;left:8%;top:52%;animation:primordial-water 9s steps(8,end) infinite}.pixel-weather:after{top:76%;left:19%;animation-delay:-4s;animation-duration:12s;opacity:.6}.pixel-weather[data-habitat=vent]:before,.pixel-weather[data-habitat=vent]:after{width:5px;height:5px;left:6%;top:61%;background:#9bc5b077;box-shadow:2px -18px #9bc5b055,-3px -36px #9bc5b044,7px -51px #9bc5b033;animation:primordial-vent 5s steps(9,end) infinite}.pixel-weather[data-habitat=vent]:after{left:92%;animation-delay:-2.7s}.world-sparks:before{content:"";position:absolute;left:21%;top:75%;width:3px;height:3px;background:#e2c08a;box-shadow:137px -145px #e2c08a88,380px 12px #e2c08a77,604px -99px #e2c08a55;animation:primordial-motes 12s steps(10,end) infinite;opacity:.35}@keyframes primordial-float{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes primordial-notice{0%{transform:translateY(0)}to{transform:translateY(-3px)}}@keyframes primordial-react{0%{transform:scale(1)}35%{transform:scale(.85) rotate(-8deg)}65%{transform:scale(1.18) rotate(5deg)}to{transform:scale(1)}}@keyframes primordial-ripple{0%{transform:scale(.5);opacity:1}to{transform:scale(1.55);opacity:0}}@keyframes primordial-water{0%,to{transform:translate(0);opacity:.3}50%{transform:translate(16px);opacity:.7}}@keyframes primordial-vent{0%{transform:translateY(10px);opacity:0}25%{opacity:.7}to{transform:translate(5px,-32px);opacity:0}}@keyframes primordial-motes{0%,to{transform:translate(0);opacity:.15}50%{transform:translate(10px,-14px);opacity:.4}}@media(prefers-reduced-motion:reduce){.molecule-icon,.pixel-weather:before,.pixel-weather:after,.world-sparks:before{animation:none}.reaction-rings{animation:none;opacity:0}.molecule-icon[data-state=reaction]{animation:none;filter:drop-shadow(0 0 3px #f7d59b)}}[data-reaction-focus]{filter:drop-shadow(0 0 4px #fff2b0) drop-shadow(0 0 12px #f1bf69)}.mechanism-workspace{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;border-radius:0;color:#f0dfaf;background:#0c252e;overflow:auto;font-family:SoupPixel,monospace}.mechanism-workspace::backdrop{background:#071922}.mechanism-workbench{min-height:100%;display:flex;flex-direction:column;padding:18px clamp(16px,3vw,48px) 14px;background:linear-gradient(90deg,#213c3c44 1px,transparent 1px),linear-gradient(#213c3c33 1px,transparent 1px),#0c252e;background-size:32px 32px;box-shadow:inset 0 0 0 7px #1f3b3e,inset 0 0 0 10px #54706a}.mechanism-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-shrink:0;padding:6px 0 12px;border-bottom:3px solid #617c70}.mechanism-eyebrow{display:block;color:#a7c6b6;font-size:13px;margin-bottom:7px;letter-spacing:1px}.mechanism-heading h2{font-size:clamp(21px,2.2vw,32px);font-weight:400;line-height:1.2;color:#f5d59e}.mechanism-workspace button{font-size:15px;line-height:1.25;border-radius:0;border:2px solid #738b78;background:#24433f;box-shadow:3px 3px #061a23;padding:10px 14px;color:#eee0b6;min-height:42px}.mechanism-workspace button:hover{background:#35554a;border-color:#efc781}.mechanism-workspace button[aria-pressed=true]{background:#e6d3a4;border-color:#fae7b9;color:#203c3c}.mechanism-workspace button:focus-visible,.mechanism-stage:focus-visible{outline:3px solid #f1bc72;outline-offset:4px}.mechanism-return{flex-shrink:0}.mechanism-return span{margin-left:12px;font-size:22px}.mechanism-preparation{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:10px 2px;font-size:14px;color:#a9cbbd;line-height:1.4}.mechanism-preparation span:first-child{color:#f0dfaf}.mechanism-stage{position:relative;flex:1;min-height:230px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#0b2029;border:3px solid #638070;box-shadow:5px 5px #061922;outline:none}.mechanism-view{display:flex;flex-direction:column;align-items:stretch;justify-content:center;width:100%;height:100%;min-width:0;margin:0}.mechanism-view figcaption{font-size:13px;color:#b9d3c2;line-height:1.4;padding:7px 12px;background:#112e36}.mechanism-view>svg{display:block;width:100%;height:100%;min-height:230px;max-height:calc(100dvh - 335px);object-fit:contain;image-rendering:pixelated}.mechanism-stage-pair{display:grid;grid-template-columns:1fr 1fr;align-items:stretch}.mechanism-stage-pair .mechanism-view{justify-content:flex-start}.mechanism-stage-pair .mechanism-view>svg{flex:1;min-height:180px}.mechanism-control-view{border-left:3px solid #638070}.mechanism-control-view figcaption{color:#efcf94;background:#2c3e35}.mechanism-observations{display:grid;grid-template-columns:1fr}.mechanism-observations-pair{grid-template-columns:1fr 1fr;gap:10px}.mechanism-observations-pair .mechanism-observation{font-size:17px;min-height:80px}.mechanism-control-observation{background:#dfc99a}.mechanism-observation{display:flex;align-items:center;gap:17px;min-height:68px;flex-shrink:0;padding:13px 18px;margin-top:12px;background:#e9d5a5;color:#213c3d;border:3px solid #bbaa79;box-shadow:4px 4px #061922;font-size:clamp(17px,1.6vw,23px);line-height:1.3}.mechanism-observation>span{font-size:17px;color:#64735d;align-self:flex-start;padding-top:3px}.mechanism-observation p{margin:0}.mechanism-timeline{display:flex;align-items:center;gap:18px;padding:15px 0 14px;flex-shrink:0}.mechanism-scrub-label{font-size:13px;color:#b4cdbd}.mechanism-scrub-track{position:relative;flex:1;min-width:80px;height:24px}.mechanism-scrub-track input{position:relative;z-index:2;width:100%;height:24px;cursor:ew-resize;margin:0;background:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;accent-color:#edc07a}.mechanism-scrub-track input::-webkit-slider-runnable-track{height:7px;border:1px solid #72907b;background:#233d3c}.mechanism-scrub-track input::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin-top:-7px;height:19px;width:15px;border:2px solid #fae5ae;background:#dfb46a;box-shadow:2px 2px #061922;border-radius:0}.mechanism-scrub-track input::-moz-range-track{height:7px;border:1px solid #72907b;background:#233d3c}.mechanism-scrub-track input::-moz-range-thumb{height:17px;width:13px;border:2px solid #fae5ae;background:#dfb46a;border-radius:0}.mechanism-beat-marks{position:absolute;top:0;right:7px;bottom:0;left:7px;pointer-events:none}.mechanism-beat-marks i{position:absolute;top:22px;width:3px;height:5px;background:#7d9580}.mechanism-beat-marks i.passed{background:#edc07a}.mechanism-time{font-size:13px;white-space:nowrap;color:#e3ca91}.mechanism-time small{font-size:11px;color:#a6c2b5;margin-left:7px}.mechanism-controls{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;flex-shrink:0;padding-bottom:3px}.mechanism-transport,.mechanism-inspection{display:flex;gap:8px;flex-wrap:wrap}.mechanism-workspace .mechanism-play{min-width:116px;background:#d7c08c;color:#1c3839;border-color:#f0dfa9}.mechanism-comparison-note{font-size:12px;color:#aecabb;margin:10px 0 0;line-height:1.4}.mechanism-unavailable{padding:40px 0;font-size:20px}.mechanism-view-observation{background:#e9d5a5;color:#213c3d;margin:0;padding:12px 16px;font-size:17px;line-height:1.4;min-height:74px}.mechanism-control-view .mechanism-view-observation{background:#dfc99a}.mechanism-workbench:not(.mechanism-comparing){height:100dvh;min-height:0}.mechanism-workbench:not(.mechanism-comparing) .mechanism-stage{min-height:0;flex:1 1 0}.mechanism-workbench:not(.mechanism-comparing) .mechanism-view{min-height:0}.mechanism-workbench:not(.mechanism-comparing) .mechanism-view>svg{flex:1 1 0;min-height:0;max-height:none;height:0;aspect-ratio:auto}.mechanism-workbench:not(.mechanism-comparing) .mechanism-view figcaption{flex-shrink:0}@media(max-width:1500px){.mechanism-stage-pair{grid-template-columns:1fr;flex:none}.mechanism-stage-pair .mechanism-view{height:auto}.mechanism-stage-pair .mechanism-view>svg{width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:16/9;flex:none}.mechanism-control-view{border-left:0;border-top:3px solid #638070}.mechanism-comparing .mechanism-controls{position:sticky;bottom:0;z-index:5;background:#0c252ef5;border-top:2px solid #638070;padding:12px 0}.mechanism-comparing .mechanism-view-observation{font-size:19px}.mechanism-comparing .mechanism-preparation{flex-direction:column;gap:3px}}@media(min-width:1500px){.mechanism-workbench{padding-left:5vw;padding-right:5vw}.mechanism-view>svg{max-height:calc(100dvh - 360px)}}@media(max-width:800px){.mechanism-workbench{padding:14px 16px}.mechanism-heading{gap:12px}.mechanism-heading h2{font-size:22px}.mechanism-workspace button{font-size:13px;padding:9px 10px}.mechanism-eyebrow{font-size:11px}.mechanism-return{max-width:140px}.mechanism-view>svg{max-height:none;min-height:220px;aspect-ratio:16/9}.mechanism-stage{flex:1;min-height:220px}.mechanism-stage-pair{grid-template-columns:1fr}.mechanism-control-view{border-left:0;border-top:3px solid #638070}.mechanism-observations-pair{grid-template-columns:1fr;gap:0}.mechanism-preparation{font-size:12px}.mechanism-scrub-label{display:none}.mechanism-observation{font-size:18px;padding:12px;min-height:75px}.mechanism-controls,.mechanism-inspection{justify-content:center}.mechanism-time small{display:none}}@media(max-height:660px)and (min-width:801px){.mechanism-workbench{padding-top:10px}.mechanism-heading h2{font-size:22px}.mechanism-eyebrow{display:none}.mechanism-stage{min-height:180px}.mechanism-view>svg{min-height:180px;max-height:calc(100dvh - 280px)}.mechanism-observation{min-height:52px;font-size:18px;padding:9px 14px}.mechanism-workspace button{font-size:12px;min-height:36px;padding:8px 11px}.mechanism-timeline{padding:10px 0}.mechanism-preparation{padding:7px 0;font-size:12px}}.mechanism-ingredients{display:block;color:#b8d7ca;font-size:12px;line-height:1.4;margin-top:4px}.atomic-tutorial{display:flex;flex:1;min-height:0;gap:24px;padding:24px 32px 18px;position:relative;color:#f0dfaf;font-family:SoupPixel,monospace;background:linear-gradient(90deg,#0b2839a8,#0b283928 45%,transparent)}.atomic-rail{width:146px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;border-right:2px solid #a5dcc62b;padding-right:24px;position:relative;z-index:2}.atomic-rail-heading{font-size:13px;letter-spacing:2px;color:#aac8bd;padding:5px 0 20px}.atomic-elements{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%}.atomic-element{border:0;background:transparent!important;box-shadow:none!important;display:flex;flex-direction:column;align-items:center;padding:0 0 5px;width:100%;touch-action:none;-webkit-user-select:none;user-select:none;position:relative;transition:filter .2s;cursor:grab}.atomic-element:active{cursor:grabbing;transform:none}.atomic-element svg{height:76px;width:76px;overflow:visible;filter:drop-shadow(4px 5px 0 #071e2880);transition:transform .25s}.atomic-element span{font-size:15px;color:#d7e5ce;line-height:1.2}.atomic-element:hover svg{transform:translateY(-3px)}.atomic-element:disabled{opacity:.8;cursor:default}.atomic-element-cued svg{filter:drop-shadow(0 0 8px color-mix(in srgb,var(--atom-colour) 25%,transparent));animation:atomic-invite 2s steps(12) infinite}.atomic-element-cued:after{content:"›";position:absolute;right:0;top:26px;color:#efbf7c;font-size:26px}.atomic-gesture{font-size:13px;line-height:1.6;color:#a7c7bc;margin-top:auto;padding-top:22px;text-align:center}.atomic-exit{font-size:12px;padding:6px 3px;border:0;border-bottom:1px solid #86ab9c;background:transparent;box-shadow:none;margin-top:12px}.atomic-landscape{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;position:relative}.atomic-heading{position:relative;z-index:2;min-height:116px;padding:3px 12px;text-shadow:2px 2px #0b2738}.atomic-chapter{font-size:12px;letter-spacing:2px;color:#a8cabd}.atomic-heading h1{font-size:clamp(23px,2.65vw,38px);font-weight:400;line-height:1.25;margin:10px 0 8px;color:#f5dfaf}.atomic-heading p{font-size:clamp(14px,1.5vw,20px);max-width:850px;line-height:1.5;color:#cce1cc;min-height:30px}.atomic-pool{flex:1;min-height:180px;position:relative;isolation:isolate;transition:background .3s;overflow:hidden;touch-action:none}.atomic-pool-dragging{background:#9be6d009}.atomic-stage{width:100%;height:100%;display:block;overflow:visible;position:absolute;top:0;right:0;bottom:0;left:0;filter:drop-shadow(4px 6px 0 #07253445)}.atomic-stage text,.atomic-element text,.atomic-drag-ghost text{font-family:SoupPixel,monospace}.atomic-camera{transform-origin:0 0;transition:transform .5s cubic-bezier(.22,.72,.15,1);will-change:transform}.atomic-water-light{position:absolute;left:15%;right:15%;bottom:10%;height:11%;border-top:3px solid #aedbcc13;border-bottom:5px solid #aedbcc0b;transform:skew(-20deg);animation:atomic-water 7s ease-in-out infinite;pointer-events:none;z-index:-1}.atomic-slot{animation:atomic-slot-glow 2s ease-in-out infinite}.atomic-slot-quiet{opacity:.35}.atomic-arrival{animation:atomic-arrive .45s cubic-bezier(.18,.75,.2,1) both}.atomic-bond{animation:atomic-bond-grow .45s ease-out both}.atomic-angle{animation:atomic-bond-grow .5s ease-out both}.atomic-model-label{position:absolute;bottom:4px;left:12px;color:#a9c7b7;font-size:12px;text-shadow:2px 2px #0b2738;pointer-events:none}.atomic-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:76px;border-top:2px solid #a5dcc622;padding:15px 12px 0;position:relative;z-index:2}.atomic-progress{display:flex;gap:24px;align-items:center;color:#648b85;font-size:19px}.atomic-progress span{position:relative;min-width:44px;text-align:center}.atomic-progress .current{color:#dce6ca}.atomic-progress .current:after{content:"";display:block;position:absolute;left:7px;right:7px;bottom:-8px;height:3px;background:#efb66c}.atomic-progress .done{color:#a6dfc5}.atomic-atom-count{color:#abc8b8;font-size:16px}.atomic-next{padding:11px 20px;background:#e4bc78;color:#17363e;border:3px solid #f1d49a;box-shadow:4px 4px #0a2534;font-size:18px;animation:atomic-bond-grow .4s ease-out both}.atomic-next:hover{background:#f3d498;border-color:#fff1c7}.atomic-next span{margin-left:16px}.atomic-drag-ghost{position:fixed;width:94px;height:94px;transform:translate(-50%,-50%);pointer-events:none;z-index:100;filter:drop-shadow(5px 7px 0 #08273580)}.atomic-finale .atomic-elements{display:grid;grid-template-columns:1fr 1fr;gap:17px 8px}.atomic-finale .atomic-element svg{width:56px;height:56px}.atomic-finale .atomic-element span{font-size:11px}.atomic-finale .atomic-element-new{animation:atomic-arrive 1s ease both}.atomic-finale .atomic-rail{width:180px}@keyframes atomic-invite{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes atomic-arrive{0%{opacity:0;translate:-100px -25px}to{opacity:1;translate:0 0}}@keyframes atomic-bond-grow{0%{opacity:0}to{opacity:1}}@keyframes atomic-slot-glow{0%,to{opacity:.45}50%{opacity:1}}@keyframes atomic-water{0%,to{translate:-15px 0;opacity:.6}50%{translate:15px -7px;opacity:1}}@media(max-height:760px){.atomic-tutorial{padding-top:14px;padding-bottom:12px}.atomic-heading{min-height:106px}.atomic-element svg{height:63px;width:63px}.atomic-elements{gap:7px}.atomic-rail-heading{padding-bottom:12px}.atomic-gesture{font-size:11px;padding-top:10px}.atomic-footer{min-height:66px}.atomic-element span{font-size:13px}}@media(max-width:760px){.atomic-tutorial{gap:12px;padding:16px 12px 12px}.atomic-rail{width:92px;padding-right:10px}.atomic-rail-heading{font-size:10px;letter-spacing:1px}.atomic-element svg{height:61px;width:61px}.atomic-element span{font-size:12px}.atomic-element-cued:after{right:-3px;font-size:20px}.atomic-heading{padding:2px 6px;min-height:130px}.atomic-heading h1{font-size:24px}.atomic-heading p{font-size:15px}.atomic-chapter{font-size:10px;letter-spacing:1px}.atomic-footer{padding-left:6px;padding-right:6px;gap:12px;flex-wrap:wrap}.atomic-progress{gap:12px;font-size:16px}.atomic-next{font-size:15px;padding:9px 11px}.atomic-model-label{font-size:10px;left:6px}.atomic-finale .atomic-rail{width:105px}.atomic-finale .atomic-elements{gap:15px 4px}.atomic-finale .atomic-element svg{height:43px;width:43px}.atomic-finale .atomic-element span{font-size:9px}}@media(prefers-reduced-motion:reduce){.atomic-camera{transition-duration:.15s}.atomic-element-cued svg,.atomic-slot,.atomic-water-light{animation:none}.atomic-arrival,.atomic-bond,.atomic-next,.atomic-angle{animation-duration:.15s}}.atomic-element-roles{margin-top:18px;color:#b8d5c5;font-size:12px;line-height:1.5;text-align:left}.atomic-element-roles p{margin:0 0 7px}.atomic-element-roles b{color:#e9bd79;font-weight:400}.atomic-environment{position:absolute;bottom:8px;right:8px;display:flex;align-items:center;gap:8px;pointer-events:none;background:#102d36b8;padding:4px 10px;color:#c2dacd;font-size:12px;text-shadow:1px 2px #102b35;z-index:1}.atomic-environment svg{width:90px;height:30px;flex:none}.atomic-environment p{margin:0;max-width:265px;line-height:1.4}.atomic-vent-steam{animation:atomic-steam 2s ease-in-out infinite}@keyframes atomic-steam{50%{opacity:.35;transform:translateY(-3px)}}@media(max-width:760px){.atomic-environment{font-size:11px}.atomic-environment svg{width:65px}.atomic-element-roles{font-size:10px}}.habitat-journey{position:relative;flex:1;min-height:340px;overflow:hidden;isolation:isolate;background:#173c50;color:#f0dfaf;font-family:SoupPixel,monospace}.journey-landscape{position:absolute;width:100%;height:100%;top:0;right:0;bottom:0;left:0;display:block;image-rendering:pixelated}.journey-landscape text{font-family:SoupPixel,monospace}.journey-heading{position:absolute;top:26px;left:32px;right:32px;pointer-events:none;text-shadow:3px 3px #17333d}.journey-heading>span{font-size:clamp(24px,3vw,40px);line-height:1.2}.journey-cargo{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:12px;font-size:16px;line-height:1.4;color:#deebd2}.journey-cargo span:before{content:"◆";font-size:10px;color:#f1c17d;margin-right:9px}.journey-route{position:absolute;bottom:30px;left:32px;right:180px;display:flex;align-items:center;gap:16px;color:#a6c5c0;font-size:14px;text-shadow:2px 2px #13323d;pointer-events:none}.journey-route .active{color:#f1d5a0}.journey-route i{width:100px;max-width:18vw;height:4px;background:#a9c9c33a;display:block}.journey-route b{height:4px;display:block;background:#efc17e}.journey-scale-note{position:absolute;left:32px;bottom:63px;font-size:11px;color:#b9d1c8;text-shadow:2px 2px #13323d;pointer-events:none}.journey-skip{position:absolute;right:30px;bottom:24px;color:#17363e;background:#e4bc78;border:3px solid #f1d49a;box-shadow:4px 4px #0a2534;padding:10px 18px;font-size:17px}.journey-skip:hover{background:#f3d498;border-color:#fff1c7}.journey-skip span{margin-left:12px}@media(max-width:760px){.journey-heading{left:20px;right:20px;top:20px}.journey-cargo{font-size:13px;gap:7px 16px}.journey-route{left:20px;right:140px;font-size:11px;gap:10px}.journey-route i{max-width:40px}.journey-skip{right:20px;font-size:14px;padding:8px 12px}.journey-scale-note{left:20px;font-size:9px;max-width:65%;line-height:1.5}}.world-conditions{position:absolute;top:78px;right:0;bottom:0;left:0;pointer-events:none;z-index:-1;overflow:hidden}.hot-rock{position:absolute;bottom:-70px;left:35%;right:5%;height:190px;background:radial-gradient(ellipse,#e58c3966,transparent 65%);animation:rock-pulse 4s ease-in-out infinite}.thermal-ribbon{position:absolute;bottom:-70px;width:12px;height:80px;border-left:3px solid #e9a362;border-right:2px solid #c77749;opacity:0;animation:thermal-rise 4s linear infinite;filter:drop-shadow(0 0 6px #f6b864)}@keyframes thermal-rise{0%{transform:translate(0);opacity:0}15%{opacity:.35}80%{opacity:.16}to{transform:translate(26px,-570px);opacity:0}}@keyframes rock-pulse{50%{opacity:.4;transform:scaleX(1.2)}}.sun-photon{position:absolute;top:-100px;height:70px;width:3px;background:#f4d58c;opacity:0;transform:rotate(22deg);animation:photon-fall 5s linear infinite}@keyframes photon-fall{20%{opacity:.4}to{transform:translate(-240px,700px) rotate(22deg);opacity:0}}.cycling-waterline{position:absolute;left:25%;right:0;bottom:0;height:35%;border-top:2px solid #a5dcc64a;background:#78c8cc0c;animation:water-cycle 16s ease-in-out infinite}@keyframes water-cycle{50%{transform:translateY(90%);opacity:.2}}.water-vapor{position:absolute;bottom:18%;width:5px;height:5px;background:#c5e5da;animation:evaporate 4s infinite;opacity:0}@keyframes evaporate{20%{opacity:.4}to{transform:translateY(-180px);opacity:0}}.natural-feed{position:absolute;z-index:3;right:3%;top:5%;border:0;background:transparent;box-shadow:none;display:flex;flex-direction:column;align-items:center;animation:feed-bob 3s ease-in-out infinite;padding:0}.natural-feed:hover{background:#b0dfca15;border:0}.natural-feed span{font-size:12px;color:#e8dcad}.natural-feed:after{content:"↓";color:#efb66c;font-size:22px}.phosphate-feed{top:auto;bottom:2%;right:4%}@keyframes feed-bob{50%{transform:translateY(-8px)}}.ingredient-origin{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:15px 0}.ingredient-origin button{flex-basis:100%}.clay-feed{top:auto;bottom:5%;right:22%}.ammonia-feed{left:2%;right:auto;top:3%;z-index:5}.ammonia-feed span{background:#173841e8;padding:4px 7px}.natural-feed:hover{filter:drop-shadow(0 0 8px #ead5a7)}.sulfide-feed{top:3%;right:3%;z-index:5}.sulfide-feed span{background:#173841e8;padding:4px 7px}.living-background{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-2;overflow:hidden;pointer-events:none;opacity:.8;transition:opacity 1.2s}.background-world{width:100%;height:100%;display:block}.background-quiet{opacity:.22}.sky-haze{animation:haze-drift 90s ease-in-out infinite alternate}.water-glint{opacity:0;animation:glint-cycle 8s ease-in-out infinite;animation-delay:var(--delay)}.sediment-grain{opacity:.13;animation:sediment-drift var(--duration) linear infinite;animation-delay:var(--delay)}.back-bubble{opacity:0;animation:back-bubble 14s linear infinite;animation-delay:var(--delay)}.vent-mouth{animation:vent-breathe 9s ease-in-out infinite}.organic-traces,.ambient-film,.ambient-vesicles,.chain-deposits,.cell-colonies{opacity:0;transition:opacity 3s ease}.organic-traces.is-present{opacity:.42}.ambient-film.is-present{opacity:.8}.ambient-vesicles.is-present,.chain-deposits.is-present{opacity:.6}.cell-colonies.is-present{opacity:.7}.organic-speck{animation:organic-drift var(--duration) ease-in-out infinite alternate;animation-delay:var(--delay)}.vesicle-drift{animation:vesicle-current 22s ease-in-out infinite alternate;animation-delay:var(--delay)}.film-sheen{animation:film-breathe 13s ease-in-out infinite}.colony-breathe{animation:colony-breathe 11s ease-in-out infinite;animation-delay:var(--delay);transform-box:fill-box;transform-origin:center}.wet-dry-edge{animation:shore-retreat 20s ease-in-out infinite}.dry-cracks{animation:dry-appear 20s ease-in-out infinite}.milestone-cells,.milestone-complex{filter:saturate(1.05)}@keyframes haze-drift{to{transform:translate(55px)}}@keyframes glint-cycle{30%,80%{opacity:0}50%{opacity:.14;transform:translate(8px)}}@keyframes sediment-drift{0%{transform:translateY(-30px);opacity:0}20%{opacity:.17}80%{opacity:.1}to{transform:translate(-34px,75px);opacity:0}}@keyframes back-bubble{0%{transform:translate(0);opacity:0}15%{opacity:.17}to{transform:translate(23px,-270px);opacity:0}}@keyframes vent-breathe{50%{opacity:.3}}@keyframes organic-drift{to{translate:20px -9px}}@keyframes vesicle-current{to{transform:translate(24px,-18px)}}@keyframes film-breathe{50%{opacity:.35;transform:translate(8px)}}@keyframes colony-breathe{50%{transform:scale(1.07);opacity:.65}}@keyframes shore-retreat{50%{transform:translateY(28px);opacity:.04}}@keyframes dry-appear{0%,to{opacity:.03}50%{opacity:.2}}@media(prefers-reduced-motion:reduce){.living-background *{animation:none!important;transition:none!important}.water-glint{opacity:.1}}.complex-colonies{opacity:0;transition:opacity 3s ease}.complex-colonies.is-present{opacity:.8}.complex-drift{animation:complex-current 29s ease-in-out infinite alternate;animation-delay:var(--delay)}@keyframes complex-current{to{translate:12px -6px}}.world-scene{animation:scenery-drift 42s ease-in-out infinite alternate;transform:scale(1.025)}.world-scene:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.35;animation:scenery-light 8s ease-in-out infinite alternate}.habitat-vent .world-scene:before{background:radial-gradient(ellipse at 90% 80%,#e8a05b44,transparent 35%),radial-gradient(ellipse at 10% 72%,#e8a05b33,transparent 35%)}.habitat-shore .world-scene:before,.habitat-pool .world-scene:before{background:radial-gradient(ellipse at 76% 17%,#ffdea335,transparent 42%)}.ambient-light{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-2;pointer-events:none;overflow:hidden}.ambient-light svg{width:100%;height:100%;display:block}.ambient-heat{fill:#eda466;opacity:.075;filter:blur(28px);animation:ambient-breathe 4s ease-in-out infinite alternate}.ambient-plume{fill:#d6bb8f;opacity:0;animation:ambient-rise 8s steps(18,end) infinite;animation-delay:calc(var(--i)*-.8s)}.ambient-sunbeams{fill:#ffdfa0;opacity:.04;animation:ambient-breathe 9s ease-in-out infinite alternate}.ambient-glint{fill:#fbe7ad;opacity:0;animation:ambient-glint 6s steps(6,end) infinite;animation-delay:calc(var(--i)*-.47s)}.ambient-steam{stroke:#f3d1a6;opacity:0;animation:ambient-rise 9s ease-in-out infinite;animation-delay:calc(var(--i)*-1.1s)}@keyframes scenery-drift{0%{transform:scale(1.025) translate(-.35%)}to{transform:scale(1.045) translate(.35%)}}@keyframes scenery-light{0%{opacity:.2}to{opacity:.6}}@keyframes ambient-breathe{0%{opacity:.035}to{opacity:.12}}@keyframes ambient-rise{0%{opacity:0;transform:translateY(0)}30%{opacity:.28}to{opacity:0;transform:translateY(-115px)}}@keyframes ambient-glint{0%,to{opacity:0;transform:translate(-4px)}45%{opacity:.3}70%{opacity:.1;transform:translate(12px)}}@media(prefers-reduced-motion:reduce){.world-scene,.world-scene:before,.ambient-light *{animation:none!important}}.journey-guide{display:flex;align-items:center;gap:12px;align-self:center;padding:7px 15px;margin:3px 5px 10px;background:#142e38d9;border-left:3px solid #d7b47b;max-width:100%;z-index:2}.guide-molecules{display:flex;align-items:center;gap:4px}.guide-molecules>span{display:flex;align-items:center;gap:5px}.guide-condition{width:29px;height:38px;flex-shrink:0}.guide-vent .guide-condition{filter:drop-shadow(0 0 5px #cc88463b);animation:guide-warmth 4s ease-in-out infinite}.journey-guide p{font-size:12px;line-height:1.5;max-width:340px}.journey-guide button{font-size:11px;padding:8px 11px;flex-shrink:0}@keyframes guide-warmth{50%{filter:drop-shadow(0 0 8px #e8a06c8c)}}@media(max-width:1000px){.journey-guide{gap:7px;padding:7px}.journey-guide p{max-width:240px;font-size:11px}.journey-guide button{font-size:10px;padding:6px}.guide-molecules svg{width:35px}}@media(max-width:700px){.journey-guide{flex-wrap:wrap}.journey-guide p{flex:1}.journey-guide button{margin-left:auto}}.journey-guide-wrap{display:flex;flex-direction:column;align-self:center;max-width:100%;z-index:2}.exploration-focus{display:flex;justify-content:center;gap:5px;margin:0 5px 3px}.exploration-focus button{font-size:10px;padding:5px 9px;border:1px solid #6d8d7b;background:#15313be6;box-shadow:none}.exploration-focus button.active{color:#ffe3a1;border-color:#d7b47b;background:#3d514b}.journey-guide-wrap .journey-guide{margin-top:0}.exploration-focus button:focus-visible{outline:2px solid #efb66c}.rank-crest{display:block;width:44px;height:50px;flex-shrink:0;filter:drop-shadow(2px 3px 0 #0b2029);overflow:visible}.rank-crest text{font-family:SoupPixel,VT323,monospace;stroke:none;font-weight:400}.expedition-strip .rank-progress{display:flex;align-items:center;gap:9px;max-width:350px;min-width:240px;padding:0 12px 0 0;margin-right:auto;border:0;background:transparent;box-shadow:none;text-align:left;color:#f0dfaf;line-height:1.2}.rank-progress-copy{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.rank-progress-copy strong{font-size:16px;font-weight:400;white-space:nowrap}.rank-progress-copy small{font-size:12px;color:#b2cbbd;white-space:nowrap}.rank-progress-water{display:block;height:5px;background:#0d2530;border-bottom:1px solid #64837b;overflow:hidden}.rank-progress-water i{display:block;height:100%;width:calc(var(--rank-progress)*100%);background:#a5dcc6;box-shadow:3px 0 #efb66c}.expedition-strip .rank-progress .rank-atlas-arrow{margin-left:5px;color:#efb66c;font-size:18px}.expedition-strip .rank-progress:hover .rank-crest{filter:drop-shadow(2px 3px 0 #0b2029) brightness(1.12)}.expedition-strip .rank-progress:hover strong{color:#ffedb5}.expedition-strip .rank-progress:focus-visible{outline:2px solid #f0dfaf;outline-offset:4px}.expedition-strip:has(.rank-progress){min-height:64px;gap:18px}.expedition-strip .rank-progress:hover{background:transparent;border:0}.discovery-rank{position:absolute;left:50%;top:263px;display:flex;align-items:center;gap:10px;transform:translate(-50%);min-width:270px;width:max-content;max-width:94%;text-align:left;animation:rank-rise .9s .55s steps(10) both;filter:drop-shadow(2px 3px #0b2029)}.discovery-rank:before{content:"";position:absolute;left:20px;right:-15px;top:4px;bottom:7px;background:#24323ef2;border-top:2px solid #efb66c;border-bottom:2px solid #a5dcc6;z-index:-1;clip-path:polygon(0 0,100% 0,calc(100% - 10px) 50%,100% 100%,0 100%)}.discovery-rank .rank-crest{width:52px;height:59px;filter:none}.discovery-rank strong,.discovery-rank span{display:block;font-weight:400}.discovery-rank strong{font-size:21px;color:#fff0b1;white-space:nowrap}.discovery-rank span{font-size:14px;color:#a5dcc6;margin-top:5px}.discovery-burst.has-rank{height:345px}.discovery-burst.is-progress.has-rank .discovery-rank{top:220px}.discovery-burst.is-progress.has-rank{height:300px}@keyframes rank-rise{0%{opacity:0;transform:translate(-50%,22px)}65%{opacity:1;transform:translate(-50%,-3px)}to{opacity:1;transform:translate(-50%)}}@media(max-width:1000px){.expedition-strip .rank-progress{min-width:220px;gap:7px}.rank-progress-copy strong{font-size:14px}.rank-progress-copy small{font-size:11px}.rank-crest{width:38px;height:43px}.discovery-rank strong{font-size:18px}}@media(max-width:700px){.expedition-strip:has(.rank-progress){flex-wrap:wrap;gap:10px 15px}.expedition-strip .rank-progress{min-width:220px;flex:1}.discovery-rank{min-width:235px}.discovery-rank strong{font-size:17px}.discovery-rank span{font-size:12px}}@media(min-width:701px)and (max-height:850px){.reaction-pool>.discovery-burst.has-rank,.reaction-pool>.discovery-burst.is-progress.has-rank{height:auto;grid-template-columns:84px minmax(0,1fr) 170px}.discovery-burst.has-rank .discovery-rank,.discovery-burst.is-progress.has-rank .discovery-rank{position:relative;left:auto;top:auto;min-width:0;width:auto;max-width:100%;transform:none;flex-direction:column;text-align:center;gap:3px;animation:rank-rise-wide .9s .55s steps(10) both}.discovery-burst .discovery-rank:before{left:-5px;right:-5px;top:20px;bottom:3px}.discovery-burst .discovery-rank .rank-crest{width:38px;height:43px}.discovery-burst .discovery-rank strong{font-size:16px;line-height:1.2;white-space:normal}.discovery-burst .discovery-rank span{font-size:12px;margin-top:3px}}@media(min-width:701px)and (max-width:1000px)and (max-height:850px){.reaction-pool>.discovery-burst.has-rank,.reaction-pool>.discovery-burst.is-progress.has-rank{grid-template-columns:64px minmax(0,1fr) 120px;gap:8px}.discovery-burst.has-rank .discovery-words h2{font-size:21px}.discovery-burst .discovery-rank strong{font-size:15px}}@keyframes rank-rise-wide{0%{opacity:0;transform:translateY(18px)}65%{opacity:1;transform:translateY(-3px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.discovery-rank{animation:none;opacity:1;transform:translate(-50%)}}@media(min-width:701px)and (max-height:850px)and (prefers-reduced-motion:reduce){.discovery-burst .discovery-rank{animation:none;transform:none}}.discovery-burst{--discovery-color:#efb66c;position:absolute;left:50%;top:43%;transform:translate(-50%,-50%);width:min(640px,96%);height:320px;z-index:9;pointer-events:none!important;text-align:center;isolation:isolate;animation:discovery-arrive var(--burst-time) linear both;color:#fff2c0;filter:drop-shadow(0 3px 0 #102b35)}.discovery-burst *{pointer-events:none!important}.discovery-firework{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1}.discovery-ring{position:absolute;left:50%;top:37%;width:268px;height:118px;transform:translate(-50%,-50%);filter:drop-shadow(0 0 9px #f1d67d88);animation:discovery-ring 1.15s steps(9) both;opacity:0;color:var(--discovery-color)}.discovery-ring svg{width:100%;height:100%;overflow:visible}.discovery-ring path{fill:none;stroke:currentColor;stroke-width:5}.discovery-ring .ring-inner{stroke:#fff0b1;stroke-width:2}.ring-two{animation-delay:.25s;width:330px;height:164px;color:#a5dcc6;opacity:0}.ring-three{animation-delay:.8s;width:420px;height:198px;color:#fff0b1}.ring-three path{stroke-width:7}.discovery-rays{position:absolute;left:50%;top:37%;width:0;height:0;animation:discovery-rays 1.45s steps(10) both}.discovery-rays i{position:absolute;left:-3px;top:-3px;width:6px;height:38px;background:linear-gradient(var(--discovery-color),#fff0b188,transparent);transform:rotate(calc(var(--ray)*22.5deg)) translateY(-119px);transform-origin:3px 3px;box-shadow:0 -9px 0 -1px #fff0b1}.discovery-spark{position:absolute;width:6px;height:6px;left:calc(50% - 3px);top:37%;background:#fff1ad;box-shadow:6px 0 #efb66c,-6px 0 #a5dcc6,0 -6px #fff1ad,0 6px #efb66c;animation:discovery-spark 1.55s steps(12) both;animation-delay:var(--spark-delay);opacity:0;transform:rotate(var(--spark-angle)) translate(0)}.discovery-spark:nth-of-type(3n){background:#c4a6db;box-shadow:6px 0 #c4a6db,0 6px #fff0b1}.discovery-pedestal{position:absolute;left:50%;top:52%;width:190px;height:25px;transform:translate(-50%);background:#f8da9844;clip-path:polygon(15% 0,85% 0,100% 40%,100% 60%,85% 100%,15% 100%,0 60%,0 40%);box-shadow:0 0 28px 10px #e4bc6b55;animation:discovery-ground 1.8s steps(12) both}.discovery-lift{position:absolute;left:50%;top:20px;transform:translate(-50%);animation:discovery-lift 1.1s steps(12) both;filter:drop-shadow(0 0 12px #f7df9988)}.discovery-lift>.molecular-glyph{display:block}.discovery-crown{position:absolute;left:50%;top:-22px;width:52px;height:30px;transform:translate(-50%);animation:discovery-crown .95s steps(8) both}.discovery-words{position:absolute;left:0;right:0;top:142px;text-shadow:3px 3px #102b35,-2px -2px #102b35,2px -2px #102b35,-2px 2px #102b35;animation:discovery-letters .65s steps(8) both}.discovery-words h2{font-size:clamp(23px,2.8vw,38px);line-height:1.25;font-weight:400;color:#fff0b1;filter:drop-shadow(0 0 6px #e6ba6533);max-width:100%;overflow-wrap:normal}.discovery-product{font-size:17px;color:#d9eee0;margin-top:7px}.discovery-complete-word{display:block;font-weight:400;color:#a5dcc6;font-size:20px;margin-top:5px}.discovery-progress-label{font-size:15px;margin-top:9px;color:#efdfae}.discovery-progress-label b,.discovery-other-progress b{font-weight:400;color:#fff4cd}.discovery-progress-track{width:144px;height:8px;padding:2px;margin:7px auto;background:#102b35;box-shadow:0 0 0 1px #fff0b166;overflow:hidden}.discovery-progress-track i{display:block;height:4px;background:var(--discovery-color);transform-origin:left;width:100%;transform:scaleX(var(--progress-after));animation:discovery-progress .95s .35s steps(12) both}.discovery-other-progress{font-size:13px;color:#c8e7cf;margin-top:7px}.discovery-extra{display:block;color:#c4d8cd;font-size:13px;margin-top:7px}.discovery-burst.is-progress{height:250px}.is-progress .discovery-lift{top:32px}.is-progress .discovery-words{top:125px}.is-progress .discovery-words h2{font-size:27px}.is-progress .discovery-ring{width:190px;height:90px;border-width:3px}.is-progress .ring-two{display:none}.is-progress .discovery-rays{opacity:.6}.is-progress .discovery-rays i{height:19px;transform:rotate(calc(var(--ray)*22.5deg)) translateY(-86px)}.is-complete .discovery-rays{animation-duration:2.3s}.is-complete .discovery-spark{animation-duration:2.1s}.is-complete .discovery-words h2{color:#fff3bc}.is-complete .discovery-pedestal{width:250px;animation-duration:2.7s}.discovery-burst.is-paused{visibility:hidden}.discovery-burst.is-paused,.discovery-burst.is-paused *{animation-play-state:paused!important}@keyframes discovery-arrive{0%{opacity:0}5%,86%{opacity:1}to{opacity:0}}@keyframes discovery-ring{0%{opacity:0;transform:translate(-50%,-50%) scale(.25)}25%{opacity:.9}75%{opacity:.5}to{opacity:0;transform:translate(-50%,-50%) scale(1.6)}}@keyframes discovery-rays{0%{opacity:0;transform:scale(.4) rotate(-8deg)}16%{opacity:.85}to{opacity:0;transform:scale(1.6) rotate(8deg)}}@keyframes discovery-spark{0%{opacity:0;transform:rotate(var(--spark-angle)) translate(30px) scale(.4)}18%{opacity:1}75%{opacity:.7}to{opacity:0;transform:rotate(var(--spark-angle)) translate(var(--spark-distance)) scale(.25)}}@keyframes discovery-ground{0%{opacity:0;transform:translate(-50%) scale(.3)}25%{opacity:1}to{opacity:0;transform:translate(-50%) scale(1.4)}}@keyframes discovery-lift{0%{opacity:0;transform:translate(-50%,48px) scale(.65)}50%{opacity:1;transform:translate(-50%,-8px) scale(1.12)}to{opacity:1;transform:translate(-50%) scale(1)}}@keyframes discovery-letters{0%{opacity:0;transform:translateY(24px) scale(.8)}60%{opacity:1;transform:translateY(-4px) scale(1.04)}to{opacity:1;transform:none}}@keyframes discovery-crown{0%,35%{opacity:0;transform:translate(-50%,-15px)}to{opacity:1;transform:translate(-50%)}}@keyframes discovery-progress{0%{transform:scaleX(var(--progress-before))}to{transform:scaleX(var(--progress-after))}}.collection-progress{display:flex;gap:12px 20px;flex-wrap:wrap;margin:0 0 22px;padding:0 0 18px;border-bottom:1px solid #9a8b6580}.collection-progress-item{min-width:130px;flex:1;font-size:12px;color:#4c6459}.collection-progress-item>span{display:block;margin-bottom:5px}.collection-progress-item>strong{font-size:14px;font-weight:400;color:#6b6447}.collection-progress-item>div{height:4px;background:#a3957055;margin-top:6px}.collection-progress-item>div>i{height:100%;display:block;background:#758d6e}.collection-progress-item.complete>strong{color:#416b52}.collection-progress-item.complete>div>i{background:#527b5f}@media(max-width:1000px){.discovery-burst{width:96%;top:43%}.discovery-words h2{font-size:26px}.discovery-product{font-size:15px}.discovery-progress-label{font-size:13px}.discovery-burst.is-progress .discovery-words h2{font-size:22px}}@media(max-height:700px){.discovery-burst{transform:translate(-50%,-50%) scale(.86);top:46%}}@media(min-width:701px)and (max-height:850px){.reaction-pool:has(>.discovery-burst:not(.is-paused))>.world-piece>span{visibility:hidden}.reaction-pool:has(>.discovery-burst:not(.is-paused))>.world-piece>svg{opacity:.2}.reaction-pool>.discovery-burst,.reaction-pool>.discovery-burst.is-progress{left:12px;right:12px;top:0;bottom:0;width:auto;height:auto;transform:none;display:grid;grid-template-columns:96px minmax(0,1fr);align-items:center;column-gap:14px;padding:10px 24px}.discovery-burst .discovery-firework{overflow:hidden;top:0;right:0;bottom:0;left:0}.discovery-burst .discovery-ring,.discovery-burst .discovery-rays,.discovery-burst .discovery-spark{left:72px;top:50%}.discovery-burst .discovery-ring{width:160px;height:70px}.discovery-burst .ring-two{width:190px;height:85px}.discovery-burst .ring-three{width:230px;height:100px}.discovery-burst .discovery-rays i{height:20px;transform:rotate(calc(var(--ray)*22.5deg)) translateY(-68px)}.discovery-burst .discovery-pedestal{left:72px;top:69%;width:120px;height:16px}.discovery-burst .discovery-lift{position:relative;left:auto;top:auto;justify-self:center;transform:none;animation:discovery-lift-wide 1.1s steps(12) both}.discovery-burst .discovery-lift>.molecular-glyph{width:84px;height:84px}.discovery-burst .discovery-crown{width:42px;height:25px;top:-18px}.discovery-burst .discovery-words{position:relative;left:auto;right:auto;top:auto;min-width:0}.discovery-burst .discovery-words h2{font-size:clamp(22px,2.1vw,27px);line-height:1.15;text-wrap:balance}.discovery-burst .discovery-product{font-size:15px;margin-top:4px}.discovery-burst .discovery-complete-word{font-size:17px;margin-top:3px}.discovery-burst .discovery-progress-label{font-size:14px;margin-top:4px}.discovery-burst .discovery-progress-track{height:6px;padding:1px;width:120px;margin:4px auto}.discovery-burst .discovery-other-progress,.discovery-burst .discovery-extra{font-size:12px;margin-top:4px}}@media(min-width:701px)and (max-width:1000px)and (max-height:850px){.reaction-pool>.discovery-burst,.reaction-pool>.discovery-burst.is-progress{left:5px;right:5px;grid-template-columns:68px minmax(0,1fr);column-gap:9px;padding:8px}.discovery-burst .discovery-lift>.molecular-glyph{width:68px;height:68px}.discovery-burst .discovery-words h2{font-size:22px}.discovery-burst .discovery-ring,.discovery-burst .discovery-rays,.discovery-burst .discovery-spark,.discovery-burst .discovery-pedestal{left:42px}}@keyframes discovery-lift-wide{0%{opacity:0;transform:translateY(24px) scale(.65)}50%{opacity:1;transform:translateY(-5px) scale(1.08)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.discovery-burst{animation:none;opacity:1}.discovery-ring,.discovery-rays,.discovery-spark{display:none}.discovery-lift,.discovery-words,.discovery-crown{animation:none}.discovery-lift{transform:translate(-50%)}.discovery-pedestal{animation:none;opacity:.45}.discovery-progress-track i{animation:none;transform:scaleX(var(--progress-after))}}@media(min-width:701px)and (max-height:850px)and (prefers-reduced-motion:reduce){.discovery-burst .discovery-lift{animation:none;transform:none}}.collection-progress-item[data-family]>div>i{background:var(--family-bg)}.field-atlas{position:fixed;top:20px;right:20px;bottom:20px;left:20px;margin:auto;width:min(1180px,calc(100vw - 40px));height:calc(100dvh - 40px);max-width:none;max-height:none;overflow-y:auto;padding:26px 36px 36px;color:#f0dfaf;background:#15353c;background-image:linear-gradient(0deg,#203e40aa 1px,transparent 1px),linear-gradient(90deg,#203e40aa 1px,transparent 1px);background-size:28px 28px;border:4px solid #9cb499;border-radius:0;box-shadow:0 0 0 5px #10262d,0 0 0 8px #e2bc7c66;font-family:SoupPixel,monospace;clip-path:polygon(12px 0,calc(100% - 12px) 0,calc(100% - 12px) 6px,100% 6px,100% calc(100% - 12px),calc(100% - 6px) calc(100% - 12px),calc(100% - 6px) 100%,12px 100%,12px calc(100% - 6px),0 calc(100% - 6px),0 12px,12px 12px)}.field-atlas::backdrop{background:#081c25d9}.atlas-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:3px solid #6d928266;padding-bottom:18px;margin-bottom:18px}.atlas-heading>div{display:flex;gap:16px;align-items:center}.atlas-heading .rank-crest{width:58px;height:65px}.atlas-heading h2{font-size:21px;line-height:1;margin:2px 0 5px;color:#fff0c2}.atlas-heading small{color:#a4c4b4;font-size:10px;letter-spacing:1px}.atlas-heading b{font-size:12px;font-weight:400;color:#e6bb83}.atlas-close{font-size:24px;line-height:1;width:44px;height:44px;padding:0;background:#102c34;border:2px solid #9cb499;color:#f0dfaf}.atlas-collections{display:flex;flex-wrap:wrap;gap:8px}.atlas-collections button{font:inherit;font-size:12px;padding:7px 12px;background:#102a32;border:2px solid #56766d;color:#c7d6c4}.atlas-collections button b{font-weight:400;color:var(--collection-color,#efb66c);margin-left:5px}.atlas-collections button.active{color:#fff0c2;border-color:#e6bb83;background:#33504c;box-shadow:inset 0 -3px #192c30}.atlas-specimens{display:grid;grid-template-columns:repeat(auto-fill,minmax(113px,1fr));gap:6px;padding:20px 0 24px;border-bottom:3px solid #6d928266}.atlas-node{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:106px;padding:8px 5px;background:transparent;border:2px solid transparent;color:#e0e2c8;font-family:inherit;font-size:11px;line-height:1.05;cursor:pointer;text-align:center;min-width:0}.atlas-node:hover,.atlas-node:focus-visible{background:#42665b55;border-color:#7caa95;outline:none}.atlas-node.is-selected{border-color:var(--node-color);background:#b9d49c15;box-shadow:inset 0 -4px #081f2655}.atlas-node .molecular-glyph{pointer-events:none}.atlas-node span{max-width:150px}.atlas-recorded-path{padding-top:20px}.atlas-recorded-path h3{font-size:21px;font-weight:400;margin:0 0 12px;color:#a5dcc6}.atlas-path-row{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.atlas-path-row .atlas-node{flex:0 1 145px}.atlas-path-join{text-align:center;font-size:24px;line-height:1;color:#9cc2ae;text-shadow:0 3px #081f26}.atlas-path-focus{display:flex;align-items:center;justify-content:center;gap:24px;margin:5px auto;max-width:760px}.atlas-path-focus>.atlas-node{flex:0 0 170px;min-height:156px}.atlas-path-evidence{max-width:480px}.atlas-basis{color:#efb66c;font-size:12px}.atlas-path-evidence p{font-size:13px;line-height:1.15;margin:7px 0 10px}.atlas-path-evidence small{font-size:10px;color:#a9c2b4}.atlas-path-evidence>div{display:flex;flex-wrap:wrap;gap:14px;margin-top:12px}.atlas-path-evidence button,.atlas-empty button{padding:4px 0;border:0;border-bottom:2px solid #96b79b;background:transparent;color:#e8d6a1;font:inherit;font-size:12px}.atlas-empty{padding:50px 10px;text-align:center}.atlas-empty p{font-size:10px}@media(max-width:760px){.field-atlas{top:10px;right:10px;bottom:10px;left:10px;width:calc(100vw - 20px);height:calc(100dvh - 20px);padding:18px}.atlas-heading h2{font-size:24px}.atlas-heading>div{gap:9px}.atlas-heading .rank-crest{width:45px;height:53px}.atlas-collections{gap:5px}.atlas-collections button{font-size:10px;padding:6px}.atlas-specimens{grid-template-columns:repeat(auto-fill,minmax(93px,1fr));gap:2px}.atlas-node{font-size:10px;min-height:98px}.atlas-path-focus{gap:12px}.atlas-path-focus>.atlas-node{flex-basis:114px}.atlas-path-evidence p{font-size:12px}}@media(prefers-reduced-motion:reduce){.field-atlas *{scroll-behavior:auto}}.atlas-route-picker{display:flex;align-items:center;gap:12px;font-size:11px;margin:0 0 18px;color:#a5dcc6}.atlas-route-picker select{max-width:80%;background:#102a32;color:#f0dfaf;border:2px solid #6d8d7b;padding:8px;font:inherit}.atlas-used-in{text-align:center;font-size:10px;font-weight:400;color:#a9c2b4;margin:6px 0 3px}.atlas-heading .atlas-outcome-count{display:block;font-size:12px;letter-spacing:0;color:#a5dcc6;margin-top:8px}.atlas-collections button[data-family]{color:var(--family-ink);border-color:var(--family-ink);background:var(--family-bg)}.atlas-collections button[data-family] b{color:var(--family-ink)}.atlas-collections button[data-family].active{outline:2px solid #f0dfaf;outline-offset:1px}.material-shelf{background:linear-gradient(90deg,#102a32e8,#102a32a0);border:0;border-right:2px solid #9bb49a45;box-shadow:none;width:240px}.inventory{gap:8px 4px;padding:8px}.inventory-item,.inventory-item.found,.inventory-item:hover,.inventory-item:active{background:none;border:0;box-shadow:none;min-height:130px;padding:8px 3px;outline-offset:0}.inventory-item:hover svg,.inventory-item:focus-visible svg{filter:drop-shadow(1px 0 #e9d6a5) drop-shadow(-1px 0 #e9d6a5)}.inventory-item span{font-size:13px;text-shadow:1px 2px #08232b;line-height:1.2}.inventory-item small{font-size:9px}.world-piece,.world-piece:hover,.world-piece:active,.world-piece.selected{border:0;box-shadow:none;background:none;outline:none;padding:0;min-width:122px;min-height:134px;max-width:170px;transform:translate(-50%,-50%)}.world-piece>svg{width:112px;height:112px;pointer-events:none;filter:drop-shadow(0 3px #09253299)}.world-piece:hover>svg,.world-piece.selected>svg{filter:drop-shadow(2px 0 #f1ce91) drop-shadow(-2px 0 #f1ce91) drop-shadow(0 2px #f1ce91) drop-shadow(0 -2px #f1ce91)}.world-piece:focus-visible{outline:2px dashed #e5c98f;outline-offset:4px}.world-piece span{font-size:14px;line-height:1.2;max-width:165px;text-shadow:2px 2px #0b2932,-1px -1px #0b2932;background:#102e3766;padding:2px 6px}.world-piece.held{opacity:.18}.world-piece.selected:after{content:"◦";position:absolute;bottom:-16px;color:#efc179;font-size:24px}.drag-ghost>svg{width:112px;height:112px}.drag-ghost span{background:none;text-shadow:2px 2px #0b2932}.reaction-pool{isolation:isolate}.first-instruction{pointer-events:none}.record-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.record-actions button{font-size:12px;padding:6px 8px}.record-actions small{color:#6d674e}.trial-records article{flex-wrap:wrap}.pinned-frames{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;flex-basis:100%;width:100%;padding:5px 12px 14px}.pinned-frames>button{background:#15333c;border:2px solid #8c7954;padding:0;overflow:hidden;text-align:left;max-width:400px}.pinned-frames svg{display:block;width:100%;height:auto;pointer-events:none}.pinned-frames span{display:block;padding:7px 10px;color:#f0dfaf;font-size:13px;line-height:1.3}.reflection-specimen>svg{flex-shrink:0}@media(max-width:1000px){.material-shelf{width:205px}.world-piece>svg{width:96px;height:96px}.world-piece{min-width:100px;min-height:120px}.world-piece span,.inventory-item span{font-size:12px}}@media(max-width:700px){.material-shelf{width:100%;border-right:0;border-top:2px solid #9bb49a45}.inventory-item{min-height:112px}.world-piece>svg{width:88px;height:88px}.world-piece span{font-size:11px}.pinned-frames{grid-template-columns:1fr}}.live-mechanism{position:absolute;top:-10%;right:-2%;bottom:-8%;left:-2%;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.live-mechanism>svg{width:100%;height:calc(100% - 34px);min-height:0;overflow:visible}.live-observation{color:#f0dfaf;text-align:center;font-size:16px;line-height:1.3;padding:7px 16px;max-width:94%;background:#0d2d38c7;text-shadow:1px 2px #071b22}.showing-mechanism>.world-piece,.showing-mechanism>.pool-ripples{visibility:hidden}.showing-mechanism~.bench-tools{opacity:.4}@media(max-width:700px){.live-mechanism{top:-4%;right:-2%;bottom:-4%;left:-2%}.live-observation{font-size:12px}}.is-live .place-title,.is-live .bench-tools,.is-live .habitat-dock{display:none}.is-live .reaction-pool{min-height:430px}.is-live .live-mechanism{top:0;right:0;bottom:0;left:0}.live-mechanism>svg{height:100%}.live-mechanism>.live-observation{display:none}.live-mechanism .mechanism-scene>rect:first-child{fill:transparent}@media(max-width:700px){.is-live .reaction-pool{min-height:330px}}.is-orientation .era-trail,.is-orientation .shelf-era-toggle,.is-orientation .expedition-strip{display:none}.orientation-prompt{align-self:center;max-width:660px;padding:10px 22px;margin:0 12px 12px;background:#102b35e8;border-left:3px solid #efb66c;line-height:1.6;font-size:13px}.orientation-prompt strong{display:block;color:#efb66c;margin-bottom:4px;font-size:15px}.opening-orbit .opening-element{display:flex;align-items:center;justify-content:center;width:88px;height:88px;border:4px solid #d7e7cc;background:#526f70;box-shadow:7px 7px #102531;border-radius:28%;font-size:40px;line-height:1}.opening-orbit .element-O{background:#944f51}.opening-orbit .element-N{background:#586896}.opening-orbit .element-C{background:#4d5e63}.is-tutorial .topbar{flex-shrink:0}.result-slip>button:not(.slip-close){display:block;margin-top:10px;max-width:100%;text-align:left}.journal-categories{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 18px}.paper-sheet .journal-categories button,.paper-sheet .category-tag{border:1px solid #9a8962;background:#e8d4a7;color:#514b36;box-shadow:2px 2px #aa9870;padding:5px 9px;font-size:13px;line-height:1.2}.paper-sheet .journal-categories button.active,.paper-sheet .journal-categories button:hover,.paper-sheet .category-tag:hover{background:#345a50;border-color:#345a50;color:#f5e7be}.collection-card{display:flex;flex-direction:column;align-items:center;gap:0;padding-bottom:10px;background:#f4e1b6;border:2px solid #b3a17a}.collection-grid .collection-open{width:100%;flex:1;min-height:125px;background:transparent;border:0;box-shadow:none;padding:12px 6px 5px;color:#2d4038}.collection-grid .category-tag{width:auto;min-height:0;display:inline-block;max-width:95%}.record-categories{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.shelf-filters{display:flex;flex-direction:column;gap:4px;padding:0 10px 8px;width:auto}.shelf-filters label{color:#c2d5c6;font-size:12px}.shelf-filters select{width:100%;min-height:34px;padding:4px 7px;border:2px solid #718a78;border-radius:0;color:#f0dfaf;background:#18383d;font:16px SoupPixel,monospace}.shelf-filters .assisted-toggle{display:flex;justify-content:space-between;align-items:center;width:100%;min-height:34px;margin-top:5px;padding:4px 8px;border:2px solid #718a78;border-radius:0;background:#18383d;color:#f0dfaf;box-shadow:none;font:16px SoupPixel,monospace;text-align:left}.shelf-filters .assisted-toggle strong{color:#b7c9b9;font-weight:400}.shelf-filters .assisted-toggle[aria-pressed=true]{border-color:#efbd78;background:#304a45}.shelf-filters .assisted-toggle[aria-pressed=true] strong{color:#f4ca87}.inventory-item.is-exhausted{filter:grayscale(1);opacity:.48}.inventory-item.is-exhausted:hover,.inventory-item.is-exhausted:focus-visible{opacity:.75}.world-piece.is-exhausted{filter:grayscale(1);opacity:.52}.world-piece.is-exhausted:hover,.world-piece.is-exhausted:focus-visible,.world-piece.is-exhausted.selected{opacity:.8}.inventory-item .shelf-category-tag{color:#b9d2bc;background:#1b4041;border:1px solid #658777;padding:2px 5px;font-size:11px;line-height:1.2}.game-layout{overflow-y:auto;overflow-x:hidden}.world-workspace{min-height:min-content}.expedition-strip{flex-shrink:0;position:relative;z-index:3;background:#102b35e8}@media(min-width:701px)and (max-height:850px){.topbar{height:64px}.era-trail{padding-top:6px;padding-bottom:6px}.game-layout{padding-top:10px}.place-title{padding-top:5px;padding-bottom:5px}.place-title h1{font-size:24px;margin-top:6px}.place-title p{margin-top:6px}.reaction-pool{min-height:160px}.bench-tools{margin:6px 0 8px}.habitat-dock button{min-height:62px;padding-top:8px;padding-bottom:8px}.habitat-dock strong{margin-bottom:5px}.habitat-dock small{line-height:1.3}}[data-family=supplies]{--family-ink:#a8d5dc;--family-bg:#244653}[data-family=building-blocks]{--family-ink:#f0c287;--family-bg:#58412f}[data-family=chains]{--family-ink:#d9bdeb;--family-bg:#493b55}[data-family=compartments]{--family-ink:#f0c9a2;--family-bg:#594136}.inventory-item{justify-content:flex-start;position:relative}.inventory-item>svg{flex:none}.inventory-item>span{display:flex;align-items:center;justify-content:center;min-height:2.5em}.inventory-item .shelf-category-tag{display:flex;align-items:center;justify-content:center;width:100%;min-height:3em;margin-top:auto;color:var(--family-ink);background:var(--family-bg);border-color:var(--family-ink);text-align:center;letter-spacing:.3px;overflow-wrap:normal}.paper-sheet .category-tag[data-family],.paper-sheet .journal-categories button[data-family]{color:var(--family-ink);background:var(--family-bg);border-color:var(--family-ink)}.paper-sheet .category-tag[data-family]:hover,.paper-sheet .journal-categories button[data-family]:hover,.paper-sheet .journal-categories button[data-family].active{filter:brightness(1.22);outline:2px solid #514b36;outline-offset:1px}[data-family=small]{--family-ink:#b9dce5;--family-bg:#264a58}[data-family=minerals]{--family-ink:#e0d2b3;--family-bg:#514d42}[data-family=acids]{--family-ink:#ffd09e;--family-bg:#604735}[data-family=amino]{--family-ink:#ffcfbf;--family-bg:#603e40}[data-family=sugars]{--family-ink:#ffe0a3;--family-bg:#5a4b2f}[data-family=lipids]{--family-ink:#f6c999;--family-bg:#614438}[data-family=bases]{--family-ink:#e2c5f2;--family-bg:#4c3f5d}[data-family=nucleotides]{--family-ink:#d8c4f4;--family-bg:#443d61}[data-family=genetic]{--family-ink:#b9d8f0;--family-bg:#344b61}[data-family=proteins]{--family-ink:#f3bfd0;--family-bg:#5b3f52}[data-family=membranes]{--family-ink:#f0d9a5;--family-bg:#5b4d32}[data-family=cells]{--family-ink:#d3e3a9;--family-bg:#455139}[data-family=organelles]{--family-ink:#e5c4e5;--family-bg:#543e54}[data-family=systems]{--family-ink:#b1e1c9;--family-bg:#305448}[data-family=preparations]{--family-ink:#cbd9c6;--family-bg:#40554d}[data-family=gases]{--family-ink:#b9dce5;--family-bg:#264a58}[data-family=small]{--family-ink:#c6e2d9;--family-bg:#315451}.inventory{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:max-content;align-items:stretch}.inventory .inventory-item{height:auto;min-width:0;min-height:140px;justify-content:flex-start;box-sizing:border-box;padding:9px 4px 10px;gap:6px}.inventory .inventory-item>svg{flex:0 0 auto}.inventory .inventory-item>span{flex:0 0 auto;width:100%;min-width:0;overflow-wrap:anywhere}.inventory .inventory-item>.shelf-category-tag{flex:0 0 auto;max-width:100%;box-sizing:border-box;white-space:normal;overflow-wrap:normal;word-break:normal;letter-spacing:.3px;line-height:1.35;text-align:center;padding:3px 4px;margin-top:auto}.inventory .inventory-item>.tried-mark{flex:0 0 auto;max-width:100%;white-space:normal}@media(max-width:700px){.inventory{grid-template-columns:repeat(4,minmax(0,1fr))}.inventory .inventory-item{min-height:140px}.inventory .inventory-item>.shelf-category-tag{font-size:10px}}@media(max-width:420px){.inventory{grid-template-columns:repeat(3,minmax(0,1fr))}}.opening p{font-family:SoupPixel,monospace;font-size:17px;line-height:1.65}.opening .opening-tagline{font-family:SoupPixel,monospace}.live-mechanism [data-live-detail=true]{display:none}.pathway-marker{position:absolute;left:50%;top:0;transform:translate(-50%);color:#c8b9da;font-size:11px;line-height:1.5;white-space:nowrap;text-shadow:2px 2px #102b35}[data-hint=true]{animation:ingredient-hint 2.4s ease-in-out infinite}[data-hint=true]>svg{filter:drop-shadow(0 0 6px #ffe3a1) drop-shadow(0 0 13px #efb66c88)}.inventory-item[data-hint=true]{outline:2px solid #e7c98288;outline-offset:-3px}.mixture-attempt{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none;display:flex;align-items:center;justify-content:center}.attempt-molecule{position:absolute;left:50%;top:45%;margin:-55px;animation:mixture-left .85s ease-in-out both}.attempt-molecule.attempt-1{animation-name:mixture-right}.attempt-ripple{position:absolute;left:50%;top:45%;width:56px;height:22px;margin:-11px -28px;border:2px solid #a5dcc666;animation:mixture-ripple .85s ease-out both}.trying-mixture .world-piece{visibility:hidden}.recovery-travel{align-self:flex-end;margin:4px 0 12px;font-size:12px;background:#173c44;color:#d3dfbe}.atomic-purpose{font-size:22px;fill:#a5dcc6}@keyframes ingredient-hint{0%,to{filter:brightness(1)}50%{filter:brightness(1.3) drop-shadow(0 0 8px #e7c98288)}}@keyframes mixture-left{0%{transform:translate(-115px) rotate(-8deg)}40%{transform:translate(-52px) rotate(3deg)}60%{transform:translate(-52px)}to{transform:translate(-130px) rotate(-6deg)}}@keyframes mixture-right{0%{transform:translate(115px) rotate(8deg)}40%{transform:translate(52px) rotate(-3deg)}60%{transform:translate(52px)}to{transform:translate(130px) rotate(6deg)}}@keyframes mixture-ripple{0%,30%{opacity:0;transform:scale(.5)}45%{opacity:.7}to{opacity:0;transform:scale(4,2)}}@media(max-width:700px){.opening p{font-size:14px}.pathway-marker{font-size:9px}}@media(prefers-reduced-motion:reduce){[data-hint=true]{filter:brightness(1.3) drop-shadow(0 0 8px #e7c98288)}.attempt-0{transform:translate(-90px)}.attempt-1{transform:translate(90px)}}.inventory-item[data-hint=true]{position:relative}.hint-quantity{position:absolute;right:3px;top:3px;font-size:12px;font-weight:400;color:#ffe3a1;text-shadow:2px 2px #102b35}.live-mechanism .live-observation{display:block;position:absolute;bottom:0;left:50%;transform:translate(-50%);margin:0;max-width:90%;padding:7px 12px;background:#102b35dd;color:#f0dfaf;font-size:12px;line-height:1.4;text-align:center;white-space:normal}.travel-prompt{color:#f0dfaf;font-size:12px;margin:0 0 8px;animation:travel-pulse 2s ease-in-out infinite}@keyframes travel-pulse{50%{color:#fff1b4}}.live-title{position:absolute;top:4px;left:50%;transform:translate(-50%);z-index:2;max-width:94%;text-align:center;background:#0b2632d9;padding:8px 18px;text-shadow:2px 2px #071b22;min-width:240px}.live-title h2{margin:0;font-size:clamp(16px,2vw,24px);font-weight:400;color:#f5dba1;line-height:1.25}.live-title p{margin:4px 0 0;font-size:clamp(11px,1.15vw,14px);color:#c7ded0;line-height:1.3}.live-title span{display:block;margin-top:4px;font-size:10px;color:#d1bddc}.live-mechanism>.mechanism-scene{position:absolute;top:78px;height:calc(100% - 145px);width:100%;overflow:visible}.live-mechanism .live-observation{bottom:3px;min-width:250px;max-width:94%;font-size:clamp(12px,1.2vw,15px);line-height:1.45;padding:8px 14px}.is-live .chapter-ready,.is-live .travel-prompt{visibility:hidden}@media(max-height:720px){.live-title{padding:4px 12px}.live-title h2{font-size:17px}.live-title p{font-size:11px}.live-title span{font-size:9px;margin-top:1px}.live-mechanism>.mechanism-scene{top:60px;height:calc(100% - 115px)}}.specimen-page .specimen-description{font-size:15px;line-height:1.6;text-align:left;max-width:620px;margin:18px auto}.specimen-page .specimen-description p{font-family:SoupPixel,monospace;font-size:15px;line-height:1.6;margin:0 0 12px}.ingredient-origin{justify-content:center}.origin-molecule{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:76px;max-width:130px;text-align:center;color:#253e3d;font-size:12px;line-height:1.3}.origin-molecule>span{overflow-wrap:anywhere}.ingredient-origin>b{align-self:center}.specimen-page>svg.molecular-glyph{display:block;margin:0 auto}.specimen-page>.specimen-category{display:table;margin:12px auto 0;padding:5px 10px;text-transform:uppercase;font-size:12px;letter-spacing:.3px;line-height:1.2}.attempt-animation{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.reaction-actions{position:absolute;bottom:4px;left:50%;transform:translate(-50%);display:flex;gap:12px;z-index:8;pointer-events:auto}.reaction-actions button{min-width:105px;padding:9px 18px;font-family:SoupPixel,monospace;font-size:14px;background:#173b40;color:#f2dcaa;border:2px solid #a9c3a5;box-shadow:3px 4px #0a2029;cursor:pointer}.reaction-actions button:last-child{background:#e3bb79;color:#17333a;border-color:#f5dfa4}.reaction-actions button:hover{filter:brightness(1.15)}.reaction-actions button:focus-visible{outline:3px solid #fff1b9;outline-offset:3px}.live-mechanism.is-ready .live-observation{bottom:55px}.live-mechanism.is-ready>.mechanism-scene{height:calc(100% - 195px)}@media(max-height:720px){.live-mechanism.is-ready>.mechanism-scene{height:calc(100% - 165px)}}.paper-sheet:has(.specimen-page){width:min(760px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:28px 32px;font-family:SoupPixel,monospace}.paper-sheet:has(.specimen-page) .sheet-heading{align-items:flex-start;gap:20px;margin-bottom:28px;padding-bottom:22px}.paper-sheet:has(.specimen-page) .sheet-heading h2{font:clamp(20px,2.4vw,25px)/1.4 SoupPixel,monospace;overflow-wrap:anywhere;margin-top:10px}.paper-sheet:has(.specimen-page) .sheet-heading .close-sheet{flex:none;line-height:1;padding:3px 7px}.paper-sheet .specimen-page{display:flex;flex-direction:column;align-items:stretch;gap:24px;max-width:640px;margin:0 auto;text-align:left;font:14px/1.75 SoupPixel,monospace}.paper-sheet .specimen-page .specimen-identity{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;margin:0}.paper-sheet .specimen-page .specimen-identity>.molecular-glyph{flex:none;margin:0}.paper-sheet .specimen-page .specimen-category{display:inline-block;align-self:center;margin:0;padding:6px 10px;max-width:100%;font:11px/1.5 SoupPixel,monospace;letter-spacing:.3px;text-transform:uppercase}.paper-sheet .specimen-page p,.paper-sheet .specimen-page .specimen-description p{font:14px/1.75 SoupPixel,monospace;text-align:left;margin:0;overflow-wrap:break-word}.paper-sheet .specimen-page .specimen-description{display:grid;gap:14px;max-width:none;margin:0;font:inherit;text-align:left}.paper-sheet .specimen-page .laboratory-connection{display:grid;gap:14px;border-top:2px solid #aa987080;padding-top:22px;margin:0;text-align:left}.paper-sheet .specimen-page h3,.paper-sheet .specimen-page .laboratory-connection h3{font:16px/1.5 SoupPixel,monospace;font-weight:400;text-align:left;margin:0}.paper-sheet .specimen-page .laboratory-connection .lab-question{padding-left:14px;margin:0;color:#446356}.paper-sheet .specimen-page .laboratory-connection a{justify-self:start;display:inline-block;font:12px/1.6 SoupPixel,monospace;text-underline-offset:4px;overflow-wrap:anywhere;padding:3px 0}.paper-sheet .specimen-page .ingredient-origin{justify-content:flex-start;gap:16px;border-top:2px solid #aa987080;padding:22px 0 0;margin:0}.paper-sheet .specimen-page .origin-molecule{font:11px/1.55 SoupPixel,monospace;min-width:76px;max-width:136px;gap:8px}.paper-sheet .specimen-page .ingredient-origin>button{flex-basis:100%;width:100%;margin-top:8px}.paper-sheet .specimen-page button{align-self:flex-start;max-width:100%;font:12px/1.6 SoupPixel,monospace;padding:10px 14px;white-space:normal;text-align:left}.paper-sheet .specimen-page .category-about{margin:0}.paper-sheet .specimen-page .product-note-actions{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px;margin:0}.paper-sheet .specimen-page .side-chain-study{display:grid;gap:14px;min-width:0}@media(max-width:600px){.paper-sheet:has(.specimen-page){width:calc(100vw - 20px);max-height:calc(100dvh - 24px);padding:20px}.paper-sheet:has(.specimen-page) .sheet-heading{margin-bottom:22px;padding-bottom:18px;gap:12px}.paper-sheet .specimen-page{gap:22px}.paper-sheet .specimen-page .specimen-identity{gap:16px}.paper-sheet .specimen-page .ingredient-origin{gap:12px}.paper-sheet .specimen-page .origin-molecule{min-width:64px;max-width:100px;font-size:10px}.paper-sheet .specimen-page .product-note-actions{flex-direction:column;align-items:stretch}.paper-sheet .specimen-page .product-note-actions>button{align-self:stretch}}
