* { box-sizing: border-box; font-family: 'Courier New', Courier, monospace; } :root { --radius: 2px; } .control { position: relative; display: inline-flex; flex-direction: column; justify-content: center; align-items: center; } .control label { margin-top: 8px; } .control+.control { margin-left: 8px; } .module input[type='submit'] { position: absolute; right: 32px; bottom: 32px; border: 1px solid currentColor; background: none; border-radius: var(--radius); padding: 4px 8px; } .module #name { position: absolute; bottom: 32px; left: 32px; padding: 4px 8px; border-radius: var(--radius); border: 1px solid currentColor; } .module { display: inline-flex; justify-content: space-between; position: relative; min-width: 500px; min-height: 500px; border-radius: var(--radius); padding: 32px; border: 1px solid currentColor; margin: 8px; } .socket + .socket { margin-top: 64px; } .socket input[type='text'] { display: inline-block; width: 24px; height: 24px; border-radius: 50%; border: 1px solid currentColor; cursor: alias; position: relative; z-index: 50; background: none; pointer-events: none; } #svgElement { z-index: 10; position: absolute; top: 0; left: 0; width: 100%; height: 100%; mix-blend-mode: multiply; } #logs { list-style: none; margin: 8px; padding: 0; } .marker { display: inline-block; margin-right: 8px; width: 0.75em; height: 0.75em; border-radius: 50%; vertical-align: middle; }