div.article table.algorithm {
    border-collapse: collapse;
    width: 80%;
    margin: 20px auto;
    font-family: 'Times New Roman', monospace;
    font-weight: unset;
    table-layout: fixed;
}

div.article table.algorithm tr {
    text-align: unset;
    font-weight: unset;
}

div.article table.algorithm th,
div.article table.algorithm td {
    padding: 8px 12px;
    border-width: 0;
    text-align: left;
    font-weight: unset;
}

div.article table.algorithm td.init {
    text-align: center;
    font-weight: bold;
}

div.article table.algorithm td.blank {
    max-width: 5%;
}

div.article table.algorithm td.step {
    text-align: center;
    font-weight: bold;
}

div.article table.algorithm span.leftline {
    border-left: 1px solid black;
    padding: 8px 12px;
}

/* Bold lines */
div.article table.algorithm .top-line    td { border-top: 3px solid black; border-bottom: 3px solid black; }
div.article table.algorithm .bottom-line td { border-bottom: 3px solid black; }