digraph pressing {
  bgcolor="#1a1a2e"
  rankdir=TB
  node [fontname="Helvetica" fontsize=10 style=filled shape=box]
  edge [color="#888888" fontname="Helvetica" fontsize=9 fontcolor="#aaaaaa"]

  label=<<B><FONT COLOR="#cccccc" POINT-SIZE="14">mixing &amp; hot pressing</FONT></B>>
  labelloc=t

  cellulose [label="dried cellulose\nweighed" fillcolor="#1E88E5" fontcolor="white"]
  glycerol [label="add glycerol\n15% = rigid\n30% = flexible" fillcolor="#7B1FA2" fontcolor="white"]
  mix [label="stir at 80°C\nfor 60 minutes\nuntil homogeneous" fillcolor="#9C27B0" fontcolor="white"]
  dry2 [label="DRY COMPLETELY\nthis step is critical\n60°C overnight\ngrind to breadcrumb texture" fillcolor="#F44336" fontcolor="white"]
  mold [label="fill metal mold\ncompress lightly\nadd lid" fillcolor="#E65100" fontcolor="white"]
  heat [label="heat to 150°C\nin oven or heat press" fillcolor="#FF9800" fontcolor="white"]
  press [label="apply maximum pressure\nbench vise, hydraulic press,\nor C-clamps\nhold 10-30 minutes" fillcolor="#FFC107" fontcolor="#1a1a2e"]
  cool [label="release pressure\ncool slowly in mold\ndo not rush" fillcolor="#795548" fontcolor="white"]
  demold [label="remove bioplastic\nfrom mold" fillcolor="#4E342E" fontcolor="white"]

  cellulose -> glycerol -> mix -> dry2 -> mold -> heat -> press -> cool -> demold

  fail1 [label="WET = FAIL\nsteam creates voids\nspongy, porous result\nmust be bone dry" fillcolor="#B71C1C" fontcolor="white" shape=octagon]
  dry2 -> fail1 [style=dashed color="#F44336" label="if skipped"]

  tip [label="coat mold interior\nwith vegetable oil\nto prevent sticking" fillcolor="#263238" fontcolor="#CDDC39" shape=note fontsize=9]
}
