body{overflow-x:hidden}.worm-hero.svelte-dvx8hi,.worm-section.svelte-dvx8hi{background:#000;color:#e5e5e5}.worm-container.svelte-dvx8hi{max-width:52rem;margin:0 auto;padding:0 1.5rem}.worm-section.svelte-dvx8hi{padding:5rem 0;border-top:1px solid #1a1a1a}.worm-section-last.svelte-dvx8hi{padding-bottom:6rem}.worm-hero.svelte-dvx8hi{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;position:relative;margin-top:-10rem}.hero-inner.svelte-dvx8hi{text-align:center;padding:10rem 2rem 2rem}.terminal-line.svelte-dvx8hi{font-family:var(--font-mono);font-size:clamp(.9rem,2.5vw,1.25rem);color:#22c55e;transition:opacity .8s ease}.terminal-line.fade-dim.svelte-dvx8hi{opacity:.2}.terminal-prompt.svelte-dvx8hi{opacity:.4;margin-right:.75rem}.cursor.svelte-dvx8hi{opacity:0}.cursor.blink.svelte-dvx8hi{animation:svelte-dvx8hi-blink .6s step-end infinite}@keyframes svelte-dvx8hi-blink{0%,to{opacity:1}50%{opacity:0}}.title-card.svelte-dvx8hi{animation:svelte-dvx8hi-titleIn 1.6s cubic-bezier(.22,.68,0,1) forwards}.hero-title.svelte-dvx8hi{font-size:clamp(4rem,14vw,10rem);font-weight:900;letter-spacing:.08em;line-height:.9;color:#fff;margin:0;text-shadow:0 0 80px rgba(255,255,255,.08)}.hero-rule.svelte-dvx8hi{width:0;height:2px;background:#22c55e;margin:1.5rem auto;animation:svelte-dvx8hi-ruleExpand 1s cubic-bezier(.22,.68,0,1) .8s forwards}.hero-sub.svelte-dvx8hi{font-family:var(--font-mono);font-size:clamp(.75rem,2vw,1rem);letter-spacing:.2em;text-transform:uppercase;color:#666;opacity:0;animation:svelte-dvx8hi-fadeUp 1s cubic-bezier(.22,.68,0,1) 1.2s forwards}@keyframes svelte-dvx8hi-titleIn{0%{opacity:0;transform:scale(.86);filter:blur(6px)}to{opacity:1;transform:scale(1);filter:blur(0)}}@keyframes svelte-dvx8hi-ruleExpand{to{width:min(200px,40vw)}}@keyframes svelte-dvx8hi-fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.scroll-cue.svelte-dvx8hi{position:absolute;bottom:2.5rem;left:50%;transform:translate(-50%)}.scroll-line.svelte-dvx8hi{display:block;width:1px;height:48px;background:linear-gradient(to bottom,transparent,#333);animation:svelte-dvx8hi-scrollPulse 2s ease-in-out infinite}@keyframes svelte-dvx8hi-scrollPulse{0%,to{opacity:.3;transform:scaleY(.6)}50%{opacity:1;transform:scaleY(1)}}.reveal-hidden{opacity:0;transform:translateY(28px)}.revealed{opacity:1;transform:translateY(0);transition:opacity .9s cubic-bezier(.22,.68,0,1),transform .9s cubic-bezier(.22,.68,0,1)}.reveal-hidden .stagger-child{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.22,.68,0,1),transform .7s cubic-bezier(.22,.68,0,1)}.stagger-child.revealed{opacity:1;transform:translateY(0)}.def-grid.svelte-dvx8hi{display:flex;align-items:center;gap:1.5rem;margin-bottom:2rem;flex-wrap:wrap;justify-content:center}.def-card.svelte-dvx8hi{flex:1;min-width:200px;padding:2rem;border:1px solid #222;border-radius:2px}.def-card-active.svelte-dvx8hi{border-color:#22c55e;background:#22c55e0a}.def-label.svelte-dvx8hi{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.15em;color:#666;margin-bottom:.75rem}.def-card-active.svelte-dvx8hi .def-label:where(.svelte-dvx8hi){color:#22c55e}.def-text.svelte-dvx8hi{font-size:.95rem;line-height:1.6;color:#999}.def-card-active.svelte-dvx8hi .def-text:where(.svelte-dvx8hi){color:#ccc}.def-divider.svelte-dvx8hi{display:flex;align-items:center;flex-shrink:0}.def-vs.svelte-dvx8hi{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.15em;color:#444;text-transform:uppercase}.def-footnote.svelte-dvx8hi{font-family:var(--font-mono);font-size:.8rem;color:#555;text-align:center;font-style:italic}.era-card.svelte-dvx8hi{text-align:center;padding:4rem 0 3rem}.era-num.svelte-dvx8hi{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.3em;color:#333;display:block;margin-bottom:.75rem}.era-name.svelte-dvx8hi{font-size:clamp(2.2rem,6vw,3.5rem);font-weight:900;letter-spacing:.06em;color:#fff;margin:0;line-height:1}.era-name-peak.svelte-dvx8hi{font-size:clamp(2.8rem,8vw,5rem)}.era-year.svelte-dvx8hi{font-family:var(--font-mono);font-size:.8rem;letter-spacing:.2em;color:#444;display:block;margin-top:1rem}.era-card-peak.svelte-dvx8hi .era-num:where(.svelte-dvx8hi){color:#ef4444}.worm-section-peak.svelte-dvx8hi{border-top-color:#1a0000}.era-body.svelte-dvx8hi{display:flex;flex-direction:column;gap:2rem}.narrative-block.svelte-dvx8hi p:where(.svelte-dvx8hi){font-size:1.05rem;line-height:1.75;color:#bbb}.narrative-block.svelte-dvx8hi strong:where(.svelte-dvx8hi){color:#fff}.narrative-block.svelte-dvx8hi em:where(.svelte-dvx8hi){color:#999;font-style:italic}.narrative-block.svelte-dvx8hi code:where(.svelte-dvx8hi){font-family:var(--font-mono);font-size:.85em;background:#111;padding:.15em .45em;border-radius:2px;color:#22c55e}.mt-4.svelte-dvx8hi{margin-top:1rem}.terminal-block.svelte-dvx8hi{border:1px solid #222;border-radius:4px;overflow:hidden}.terminal-header.svelte-dvx8hi{display:flex;align-items:center;gap:6px;padding:.6rem 1rem;background:#111;border-bottom:1px solid #222}.terminal-dot.svelte-dvx8hi{width:8px;height:8px;border-radius:50%;background:#333}.terminal-title.svelte-dvx8hi{font-family:var(--font-mono);font-size:.65rem;letter-spacing:.1em;color:#555;margin-left:.5rem}.terminal-body.svelte-dvx8hi{font-family:var(--font-mono);font-size:clamp(.8rem,2vw,1.1rem);color:#22c55e;padding:1.5rem;margin:0;background:#0a0a0a}.tech-block.svelte-dvx8hi{border:1px solid #1a1a1a;padding:1.5rem}.tech-title.svelte-dvx8hi{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.2em;color:#555;margin-bottom:1.25rem}.tech-grid.svelte-dvx8hi{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.tech-item.svelte-dvx8hi{display:flex;flex-direction:column;gap:.25rem}.tech-name.svelte-dvx8hi{font-family:var(--font-mono);font-size:.85rem;color:#fff}.tech-desc.svelte-dvx8hi{font-size:.8rem;color:#666;line-height:1.5}.callout-block.svelte-dvx8hi{border-left:2px solid #222;padding-left:1.5rem}.callout-block.svelte-dvx8hi p:where(.svelte-dvx8hi){font-size:.95rem;line-height:1.7;color:#888}.callout-block.svelte-dvx8hi strong:where(.svelte-dvx8hi){color:#fff}.callout-peak.svelte-dvx8hi{border-left-color:#ef4444}.callout-peak.svelte-dvx8hi p:where(.svelte-dvx8hi){color:#aaa}.stat-row.svelte-dvx8hi{display:flex;gap:2rem;flex-wrap:wrap;padding-top:1rem;border-top:1px solid #111;margin-top:.5rem}.stat.svelte-dvx8hi{display:flex;flex-direction:column;gap:.2rem}.stat-value.svelte-dvx8hi{font-family:var(--font-mono);font-size:1.3rem;font-weight:700;color:#fff}.stat-label.svelte-dvx8hi{font-family:var(--font-mono);font-size:.65rem;letter-spacing:.1em;color:#444;text-transform:uppercase}.worm-header.svelte-dvx8hi{display:flex;align-items:center;gap:1rem;padding-top:1rem}.worm-badge.svelte-dvx8hi{font-family:var(--font-mono);font-size:.7rem;font-weight:700;letter-spacing:.15em;color:#fff;padding:.3rem .75rem;border-radius:2px}.worm-date.svelte-dvx8hi{font-family:var(--font-mono);font-size:.75rem;color:#555}.peak-name.svelte-dvx8hi{text-align:center;padding:1rem 0 0}.peak-name.svelte-dvx8hi span:where(.svelte-dvx8hi){font-family:var(--font-mono);font-size:clamp(1.8rem,5vw,3rem);font-weight:700;letter-spacing:.35em;color:#ef4444;text-shadow:0 0 40px rgba(239,68,68,.3),0 0 80px rgba(239,68,68,.1);animation:svelte-dvx8hi-stuxnetPulse 3s ease-in-out infinite}@keyframes svelte-dvx8hi-stuxnetPulse{0%,to{text-shadow:0 0 40px rgba(239,68,68,.3),0 0 80px rgba(239,68,68,.1)}50%{text-shadow:0 0 60px rgba(239,68,68,.5),0 0 120px rgba(239,68,68,.15)}}.damage-grid.svelte-dvx8hi{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.damage-card.svelte-dvx8hi{border:1px solid #1a1a1a;padding:1.25rem;display:flex;flex-direction:column;gap:.3rem;transition:border-color .4s cubic-bezier(.22,.68,0,1),background .4s cubic-bezier(.22,.68,0,1)}.damage-card.svelte-dvx8hi:hover{border-color:#333;background:#ffffff04}.damage-company.svelte-dvx8hi{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.1em;color:#666}.damage-amount.svelte-dvx8hi{font-size:1.5rem;font-weight:800;color:#fff}.damage-detail.svelte-dvx8hi{font-size:.75rem;color:#555;line-height:1.4}.sim-title.svelte-dvx8hi{font-size:clamp(1.5rem,4vw,2.2rem);font-weight:900;letter-spacing:.06em;color:#fff;margin-bottom:.5rem}.sim-subtitle.svelte-dvx8hi{font-family:var(--font-mono);font-size:.8rem;color:#555;margin-bottom:2rem}.sim-controls.svelte-dvx8hi{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.sim-btn.svelte-dvx8hi{font-family:var(--font-mono);font-size:.75rem;background:#0a0a0a;border:1px solid #222;color:#888;padding:.5rem 1rem;cursor:pointer;transition:border-color .4s cubic-bezier(.22,.68,0,1),color .4s cubic-bezier(.22,.68,0,1),background .4s cubic-bezier(.22,.68,0,1);display:flex;flex-direction:column;gap:.15rem;border-radius:2px}.sim-btn.svelte-dvx8hi:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.sim-btn-active.svelte-dvx8hi{border-color:var(--accent);color:var(--accent);background:#ffffff05}.sim-btn.svelte-dvx8hi:disabled:not(.sim-btn-active){opacity:.3;cursor:default}.sim-btn-name.svelte-dvx8hi{font-weight:600}.sim-btn-year.svelte-dvx8hi{font-size:.6rem;color:#444}.sim-grid-wrap.svelte-dvx8hi{border:1px solid #1a1a1a;padding:.75rem;background:#050505;border-radius:2px;overflow:hidden}.sim-grid.svelte-dvx8hi{display:grid;grid-template-columns:repeat(var(--cols),1fr);gap:2px}.sim-cell.svelte-dvx8hi{aspect-ratio:1;background:#111;border-radius:1px;transition:background .25s ease,box-shadow .25s ease}.sim-cell-infected.svelte-dvx8hi{background:var(--accent);box-shadow:0 0 6px var(--accent)}.sim-stats.svelte-dvx8hi{display:flex;gap:2rem;flex-wrap:wrap;align-items:baseline;margin-top:1rem;padding-top:1rem;border-top:1px solid #111}.sim-stat.svelte-dvx8hi{display:flex;align-items:baseline;gap:.4rem}.sim-stat-value.svelte-dvx8hi{font-family:var(--font-mono);font-size:1.1rem;font-weight:700;color:#fff}.sim-stat-label.svelte-dvx8hi{font-family:var(--font-mono);font-size:.7rem;color:#444}.sim-complete.svelte-dvx8hi .sim-stat-value:where(.svelte-dvx8hi){color:var(--accent, #22c55e);animation:svelte-dvx8hi-unlockPulse .6s cubic-bezier(.22,.68,0,1)}@keyframes svelte-dvx8hi-unlockPulse{0%{opacity:0;transform:scale(.9)}60%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.speed-bars.svelte-dvx8hi{display:flex;flex-direction:column;gap:1.25rem;margin-top:1rem}.speed-row.svelte-dvx8hi{display:grid;grid-template-columns:140px 1fr 80px;align-items:center;gap:1rem}@media(max-width:640px){.speed-row.svelte-dvx8hi{grid-template-columns:100px 1fr 60px;gap:.5rem}}.speed-label.svelte-dvx8hi{display:flex;flex-direction:column}.speed-name.svelte-dvx8hi{font-family:var(--font-mono);font-size:.8rem;color:#ccc;font-weight:600}.speed-year.svelte-dvx8hi{font-family:var(--font-mono);font-size:.6rem;color:#444}.speed-track.svelte-dvx8hi{height:6px;background:#111;border-radius:3px;overflow:hidden}.speed-fill.svelte-dvx8hi{height:100%;width:var(--fill-width);background:var(--fill-color);border-radius:3px;transition:width 1.8s cubic-bezier(.22,.68,0,1);box-shadow:0 0 8px var(--fill-color)}.speed-time.svelte-dvx8hi{font-family:var(--font-mono);font-size:.8rem;color:#fff;text-align:right;font-weight:700}.arc-timeline.svelte-dvx8hi{display:flex;flex-direction:column;gap:0;margin-top:2rem}.arc-node.svelte-dvx8hi{display:flex;align-items:center;gap:1rem;padding:.75rem 0}.arc-dot.svelte-dvx8hi{width:10px;height:10px;border-radius:50%;flex-shrink:0}.arc-label.svelte-dvx8hi{font-family:var(--font-mono);font-size:.85rem;font-weight:700;color:#fff;min-width:80px}.arc-desc.svelte-dvx8hi{font-size:.85rem;color:#555}.arc-line.svelte-dvx8hi{width:1px;height:16px;background:#222;margin-left:4.5px}.related-block.svelte-dvx8hi{border-top:1px solid #1a1a1a;padding-top:2rem}.related-title.svelte-dvx8hi{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.2em;color:#444;text-transform:uppercase;margin-bottom:1rem}.related-list.svelte-dvx8hi{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.6rem}.related-list.svelte-dvx8hi li:where(.svelte-dvx8hi){font-size:.85rem;color:#555}.related-list.svelte-dvx8hi a:where(.svelte-dvx8hi){color:#fff;text-decoration:underline;text-underline-offset:3px;text-decoration-color:#333;transition:text-decoration-color .3s ease}.related-list.svelte-dvx8hi a:where(.svelte-dvx8hi):hover{text-decoration-color:#22c55e}
