:root{--res-hydrophobic:#c98a1b;--res-polar:#0d9488;--res-positive:#2f5bea;--res-negative:#d6493f;--res-special:#6b7280}.fp-strip-wrap{display:block;margin:8px 0 2px;max-width:100%;overflow:hidden;line-height:0}.fp-strip{display:block;max-width:100%;height:auto}.fp-figure{margin:18px 0;padding:14px 0;border-top:1px solid var(--line,rgb(11 21 48 / .12));border-bottom:1px solid var(--line,rgb(11 21 48 / .12))}.fp-caption{font-family:var(--mono,"IBM Plex Mono",monospace);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted,#5d6273);margin-bottom:12px}.fp-seq{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.fp-seq .fp-bead{--c:var(--res-special);display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:1px solid var(--c);background:color-mix(in srgb,var(--c) 14%,transparent);font-family:var(--mono,"IBM Plex Mono",monospace);font-size:11px;line-height:1;color:var(--ink,#0b1530);cursor:default}.fp-seq .fp-hydrophobic{--c:var(--res-hydrophobic)}.fp-seq .fp-polar{--c:var(--res-polar)}.fp-seq .fp-positive{--c:var(--res-positive)}.fp-seq .fp-negative{--c:var(--res-negative)}.fp-seq .fp-special{--c:var(--res-special)}.fp-legend{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px 16px;font-family:var(--mono,"IBM Plex Mono",monospace);font-size:11px;color:var(--muted,#5d6273)}.fp-legend li{display:inline-flex;align-items:center;gap:6px}.fp-legend i{width:10px;height:10px;border-radius:50%;background:var(--c)}.fp-legend .fp-hydrophobic{--c:var(--res-hydrophobic)}.fp-legend .fp-polar{--c:var(--res-polar)}.fp-legend .fp-positive{--c:var(--res-positive)}.fp-legend .fp-negative{--c:var(--res-negative)}.fp-legend .fp-special{--c:var(--res-special)}.fp-none{margin:14px 0;font-family:var(--mono,"IBM Plex Mono",monospace);font-size:12px;color:var(--muted,#5d6273)}@media (prefers-reduced-motion:no-preference){.js .fp-figure:not(.is-in) .fp-seq .fp-bead{opacity:0;transform:translateY(6px)}.js .fp-figure.is-in .fp-seq .fp-bead{animation:fp-in .3s var(--ease,cubic-bezier(.2,.7,.2,1)) both;animation-delay:calc(var(--i, 0) * 25ms)}}@keyframes fp-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (max-width:480px){.fp-seq{gap:5px}.fp-seq .fp-bead{width:26px;height:26px}}