.mt-4.svelte-45zuld{margin-top:1rem}.mt-8.svelte-45zuld{margin-top:2rem}.text-center.svelte-45zuld{text-align:center}.sim-container.block.svelte-45zuld{display:block;width:100%;box-sizing:border-box}.sim-wrapper.svelte-45zuld{display:flex;flex-direction:column;gap:2rem;background:#f8fafc;border-radius:var(--radius-md);padding:2rem;border:2px solid #e2e8f0;min-height:auto}@media(min-width:768px){.sim-wrapper.svelte-45zuld{flex-direction:row}}.step-info.svelte-45zuld{flex:1;display:flex;flex-direction:column;justify-content:center}.step-info.svelte-45zuld h4:where(.svelte-45zuld){color:var(--text-main);margin-bottom:1rem}.visual-area.svelte-45zuld{flex:1.5;background:#fff;border-radius:var(--radius-sm);border:2px dashed #cbd5e1;position:relative;display:flex;flex-direction:column;justify-content:space-around;align-items:center;padding:2rem;overflow:hidden;min-height:350px}.human-cell.svelte-45zuld,.bacteria-cell.svelte-45zuld{width:100%;display:flex;align-items:center;gap:1rem;position:relative}.human-cell.svelte-45zuld span:where(.svelte-45zuld),.bacteria-cell.svelte-45zuld span:where(.svelte-45zuld){font-weight:700;color:#64748b;min-width:100px;flex-shrink:0}.dna-sequence-container.svelte-45zuld{display:flex;align-items:center;font-family:monospace;font-size:.85rem;color:#334155;font-weight:700}.dna-part.svelte-45zuld{display:flex;flex-direction:column;transition:transform 1s,opacity 1s}.dna-part.move-left.svelte-45zuld{transform:translate(-15px);opacity:.4}.dna-part.move-right.svelte-45zuld{transform:translate(15px);opacity:.4}.strand-text.svelte-45zuld{line-height:1.3;letter-spacing:1px;white-space:pre}.strand-text.sticky.svelte-45zuld{color:#fff}.insulin-gene.svelte-45zuld{background:#ec4899;padding:4px 6px;border-radius:4px;margin:0 4px;transition:all 1s cubic-bezier(.25,1,.5,1);display:flex;flex-direction:column;align-items:center;box-shadow:0 2px 4px #ec48994d}.insulin-gene.free.svelte-45zuld{transform:translateY(-40px) scale(1.1);box-shadow:0 8px 16px #ec489966;z-index:10}.gene-label.svelte-45zuld{background:#ffffff40;border-radius:2px;font-family:var(--font-main, sans-serif);font-size:.75rem;padding:0 4px}.plasmid-container.svelte-45zuld{position:relative;display:flex;justify-content:center;align-items:center;width:140px;height:100px}.plasmid-ring.svelte-45zuld{width:80px;height:80px;border:8px solid #0ea5e9;border-radius:50%;transition:all 1s}.plasmid-ring.open-wide.svelte-45zuld{border-top-color:transparent;transform:scale(1.1)}.plasmid-ends.svelte-45zuld{position:absolute;top:-10px;display:flex;gap:25px;font-family:monospace;font-weight:700;color:#0ea5e9;font-size:.85rem;animation:svelte-45zuld-fadeIn 1s}.enzyme-scissor.svelte-45zuld{position:absolute;font-size:1.5rem;font-weight:700;color:#ef4444;animation:svelte-45zuld-snip .5s 3}.scissor-human.svelte-45zuld{top:20%;left:50%}.scissor-bacteria.svelte-45zuld{top:60%;left:45%}@keyframes svelte-45zuld-snip{0%{transform:scale(1) rotate(0)}50%{transform:scale(1.2) rotate(-15deg)}to{transform:scale(1) rotate(0)}}@keyframes svelte-45zuld-fadeIn{0%{opacity:0}to{opacity:1}}.splicing-area.svelte-45zuld{justify-content:center}.plasmid-splicing-container.svelte-45zuld{position:relative;width:250px;height:200px;display:flex;justify-content:center;align-items:center}.plasmid-ring.large.open-top.svelte-45zuld{width:150px;height:150px;border-width:12px;border-top-color:transparent;position:absolute}.plasmid-ends-large.svelte-45zuld{position:absolute;top:15px;display:flex;justify-content:space-between;width:175px;font-family:monospace;font-weight:700;color:#0ea5e9;font-size:.85rem}.text-right.svelte-45zuld{text-align:right}.insulin-gene.splicing.svelte-45zuld{position:absolute;top:-30px;transform:scale(1)}.insulin-gene.ligated.svelte-45zuld{top:-8px;background:#ec4899;color:#fff;transition:top 1s;animation:svelte-45zuld-glowLigase 1.5s forwards}.ligated-text.svelte-45zuld{text-align:center}.plasmid-splicing-container.is-ligated.svelte-45zuld .plasmid-ring.large.open-top:where(.svelte-45zuld){border-top-color:#ec4899;transition:border-color 1s}.ligase-drop.svelte-45zuld{position:absolute;top:20%;right:15%;background:#10b981;color:#fff;padding:6px 12px;border-radius:var(--radius-sm);font-size:.9rem;font-weight:700;box-shadow:0 4px 6px #10b98166;animation:svelte-45zuld-pop .5s ease-out forwards}.cloning-area.svelte-45zuld{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:center;gap:1rem}.bacteria.svelte-45zuld{width:45px;height:75px;background:#dcfce7;border:3px solid #4ade80;border-radius:25px;position:relative;display:flex;justify-content:center;align-items:center;transition:all .5s;opacity:.5}.bacteria.has-plasmid.svelte-45zuld{opacity:1;transform:scale(1.1)}.plasmid-ring.small.svelte-45zuld{width:25px;height:25px;border-width:3px;border-color:#0ea5e9;border-top-color:#ec4899;border-right-color:#ec4899;transform:rotate(-45deg);position:relative;z-index:10;animation:svelte-45zuld-popIn .5s ease-out forwards}.bacteria.clone.svelte-45zuld{animation:svelte-45zuld-popIn .5s ease-out forwards}.bacteria.fast-pop.svelte-45zuld{animation:svelte-45zuld-popIn .3s ease-out forwards}.bacteria.super-fast-pop.svelte-45zuld{animation:svelte-45zuld-popIn .2s ease-out forwards}.insulin-inner.svelte-45zuld{position:absolute;width:0px;height:0px;background:#ec4899;border-radius:50%;box-shadow:0 0 10px #ec4899cc;opacity:0;z-index:5}.insulin-inner.is-producing.svelte-45zuld{animation:svelte-45zuld-growInsulin 8s linear forwards}.sim-finished.svelte-45zuld .insulin-inner.is-producing:where(.svelte-45zuld){animation-play-state:paused}@keyframes svelte-45zuld-growInsulin{0%{width:0px;height:0px;opacity:0}5%{opacity:.9}to{width:35px;height:35px;opacity:.9}}@keyframes svelte-45zuld-pop{0%{transform:scale(0);opacity:0}80%{transform:scale(1.1);opacity:1}to{transform:scale(1);opacity:1}}@keyframes svelte-45zuld-popIn{0%{transform:scale(0);opacity:0}to{transform:scale(1.1);opacity:1}}@keyframes svelte-45zuld-glowLigase{0%{box-shadow:0 0 0 transparent}50%{box-shadow:0 0 25px #10b981}to{box-shadow:0 0 10px #ec4899}}@keyframes svelte-45zuld-floatUp{0%{transform:translateY(0)}to{transform:translateY(-5px)}}.mt-8.svelte-1ckuf3n{margin-top:2rem}.mt-2.svelte-1ckuf3n{margin-top:.5rem}.graphic-container.svelte-1ckuf3n{display:block;width:100%;box-sizing:border-box}.content-wrapper.svelte-1ckuf3n{display:flex;flex-direction:column;gap:2rem;align-items:center;margin-top:1.5rem}@media(min-width:768px){.content-wrapper.svelte-1ckuf3n{flex-direction:row;align-items:center}}.graphic.svelte-1ckuf3n{flex:1;width:100%;max-width:450px}.graphic.svelte-1ckuf3n svg:where(.svelte-1ckuf3n){width:100%;height:auto}.explanation.svelte-1ckuf3n{flex:1.2;background:#f0fdf4;padding:1.5rem;border-radius:var(--radius-md);border:2px dashed #86efac}.explanation.svelte-1ckuf3n h4:where(.svelte-1ckuf3n){color:var(--bio-primary, #10b981);margin-top:0;margin-bottom:.5rem;font-size:1.25rem}.explanation.svelte-1ckuf3n p:where(.svelte-1ckuf3n){color:#334155;font-size:.95rem;line-height:1.6;margin:0}.mt-8.svelte-1rckxzp{margin-top:2rem}.mt-6.svelte-1rckxzp{margin-top:1.5rem}.transfer-container.svelte-1rckxzp{width:100%;box-sizing:border-box}.header-section.svelte-1rckxzp{margin-bottom:2rem}.card-title.svelte-1rckxzp{color:var(--text-main);font-family:var(--font-heading);font-size:1.5rem;margin-bottom:1rem;margin-top:0}.header-section.svelte-1rckxzp p:where(.svelte-1rckxzp){color:#334155;font-size:1rem;line-height:1.6}.methods-grid.svelte-1rckxzp{display:grid;grid-template-columns:1fr;gap:1.5rem}@media(min-width:768px){.methods-grid.svelte-1rckxzp{grid-template-columns:repeat(2,1fr);gap:2rem}}.method-item.svelte-1rckxzp{display:flex;flex-direction:column;background:#f8fafc;border:1px solid #e2e8f0;border-radius:var(--radius-md);padding:1.5rem;transition:transform .2s,box-shadow .2s}.method-item.svelte-1rckxzp:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.icon-circle.svelte-1rckxzp{width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.icon-circle.svelte-1rckxzp svg:where(.svelte-1rckxzp){width:32px;height:32px}.icon-circle.plasmid.svelte-1rckxzp{background:#e0f2fe;color:#0ea5e9}.icon-circle.virus.svelte-1rckxzp{background:#fce7f3;color:#db2777}.icon-circle.needle.svelte-1rckxzp{background:#fef3c7;color:#d97706}.icon-circle.gun.svelte-1rckxzp{background:#dcfce7;color:#16a34a}.method-content.svelte-1rckxzp h4:where(.svelte-1rckxzp){margin:0 0 .5rem;color:var(--bio-primary);font-size:1.15rem;font-weight:700}.method-content.svelte-1rckxzp .target:where(.svelte-1rckxzp){font-size:.85rem;color:#64748b;background:#f1f5f9;display:inline-block;padding:.2rem .5rem;border-radius:4px;margin-bottom:.75rem}.method-content.svelte-1rckxzp .desc:where(.svelte-1rckxzp){color:#334155;font-size:.95rem;line-height:1.5;margin:0}.bio-title.svelte-vpru38{font-family:var(--font-heading);font-weight:800;font-size:3rem;background:linear-gradient(135deg,var(--bio-primary, #10b981),var(--secondary));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:.5rem;display:inline-block;line-height:1.1}.stacked-sections.svelte-vpru38{display:flex;flex-direction:column;gap:.5rem}.info-section.svelte-vpru38{width:100%;margin-top:1.5rem}.bio-card.svelte-vpru38{border-top:4px solid var(--bio-primary, #10b981);background:#fff;padding:2rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.margin-top.svelte-vpru38{margin-top:1rem}.card-title.svelte-vpru38{color:var(--text-main);font-family:var(--font-heading);font-size:1.5rem;margin-bottom:1rem;margin-top:0}
