* { margin: 0; padding: 0; } body { font-family: monospace; } span { display: flex; padding-left: 3px; padding-right: 3px; } var { font-style: normal; padding-left: 3px; padding-right: 3px; } .statement-sequence { flex-direction: column; } .statement-sequence > span { background-color: yellow; padding: 3px; margin: 3px; border: 1px dotted #666; } .assign { color: blue; } .assign::before { content: 'Variable Assignment'; color: blueviolet; order: 1; } .assign::after { content: '='; color: black; order: 3; } .assign > *:nth-child(1) { order: 4; } .assign > *:nth-child(2) { order: 2; } .variable { color: blue; } .constant { color: red; } .while { flex-direction: column; } .while > span { margin-left: 20px; } .while::before { content: 'While'; color: blueviolet; } .return > span { order: 2; } .return::after { content: 'Return'; color: blueviolet; order: 1; } .compare::before { content: 'Comparison'; color: blueviolet; order: 1; } .compare > *:nth-child(1) { order: 2; } .compare > *:nth-child(3) { order: 3; } .compare > *:nth-child(2) { order: 4; } .branch { flex-direction: column; } .branch::before { content: 'Logical Branch'; color: blueviolet; } .branch > span { margin-left: 20px; } .bin-op > span:nth-child(1) { order: 1; } .bin-op > span:nth-child(2) { order: 3; } .bin-op > var { order: 2; } .input { color: blue; } .input::before { content: 'Input'; color: blueviolet; } .call::before { content: 'Function Call'; color: blueviolet; } .call > var { font-weight: bold; color: darkorange; order: 1; } .call > span { order: 2; } .function { border: 4px solid darkorange; margin: 3px; flex-direction: column-reverse; padding-left: 0; padding-right: 0; background-color: white; } .function > var { background-color: darkorange; } .print { background-color: greenyellow; } .repeat { flex-direction: column; } .repeat::before { content: 'Repeat'; color: blueviolet; }