div.alert {
    padding: 10pt;
    background: #FAA;
}
pre.python, div.work {
    white-space: pre;
    font-family: monospace;
    padding: 2pt;
    border: 1px solid #AAAAAA;
    margin-top: 8pt;
}
.alert div.work {
    background: #FCC;
}
p.scores, p.feedback {
    padding: 10pt;
    background: #FFA;
}
.alert p, .feedback p {
    margin-bottom: 0;
}
span.alert {
    background: #FAA;
    /*font-weight: bold;*/
}
.feedback hr {
    border-top: 1px solid #AAAAAA;
    border-bottom: 0;
    margin: 8pt;
}
.problem-header {
    padding: 4pt 12pt;
    margin-top: 2em;
    background: #EEEEEE;
}
.answer {
    margin-top: 0.6em;
}
.left-bracket {
    border: 2pt solid black;
    border-right: 0;
}
.right-bracket {
    border: 2pt solid black;
    border-left: 0;
}
table.thinborder {
    border-collapse: collapse;
    border: 1px solid black;
    margin: 0.5em;
}
.thinborder td {
    border: 1px solid black;
    padding: 0.2em;
}
ol.parts {
    counter-reset: parts;
}
ol.parts > li {
    list-style: none;
    margin: 0.5em;
}
ol.parts > li:before {
    content: "(" counter(parts, lower-alpha) ") ";
    counter-increment: parts;
}
