.algorithm {
    background: #dfffff;
    padding: 1pt 1pt 15pt 15pt ;
}

.ruleBuilder {
    display:inline-block;
    position:relative;
    margin-bottom:2em;
}

.hrSep {
   border:0;
   border-top : 1px solid black;
   max-width:600px;
   margin-left:0;
}

.derivedRules {
    width: 400px;
    vertical-align: top;
    margin-right:50px;
    display: inline-block;
}

table.rules {
    table-layout:fixed;
    width:400px;
    margin-top:20px;
    border-collapse:collapse;
}

table.rules th {
    text-align:left;
    width:70px;
    border-bottom:1px black solid;
}

table.rules tr {
    border-bottom:1px #eee solid;
}

ol.example > li {
    list-style:none;
    position:relative;
    counter-increment:example;
}

ol.example {
    counter-increment:example 0;
    padding-left:10px;
    padding-right:25px;
}

ol.example > li:before {
    content:"(" counter(example) ")";
    float:right;
}

nav.nextAndPrev {
    padding:10px;
    font-size:16pt;
    text-align:center;
}
