body { counter-reset: h1 h2 h3 h4 }

h1, h2, h3 { color: #008 }

p { text-align: justify }
p.mathpara { text-align: center }

ol.list_ordered_num   { list-style-type: decimal     }
ol.list_ordered_alpha { list-style-type: lower-alpha }
ol.list_ordered_lower_roman_parens { list-style-type: lower-roman }

dt { font-weight: bold; display: inline }
dd { display: inline; margin: 0; padding: 0 }
dd p:first-child { display: inline }

.list_assoc th       { vertical-align: top; text-align: right }
.list_assoc td       { vertical-align: top }
.list_assoc th:after { content: ":" }
.list_assoc p:first-child { margin-top:    0 }
.list_assoc p:last-child  { margin-bottom: 0 }

.day h1, .day h2 {
  font-size:        medium;
  margin-bottom:    0;
  padding:          5px;
  color:            white;
  background-color: #b45500;
}
.day h1:before { content: ""; padding-right: 0 }
.day table     { margin-bottom: 1.5em }

.image {
  text-align: center;
  border:     1px solid #777;
  float:      right;
  clear:      both;
}

.compact p:first-child { display: inline }
.compact p:last-child  { display: inline }

.warning { border: 5px solid red; margin: 2em; padding: 0.5em }

.xxx        { font-style: italic }
.xxx:before { content: "⟦ " }
.xxx:after  { content: " ⟧" }

q { quotes: "\201E" "\201C" "\201A" "\2018" }

h1:before {
  counter-increment: h1;
  counter-reset:     h2 h3 h4;
  content: counter(h1) " ";
  padding-right: 0.5em;
}
h1.bibliography:before { content: ""; padding-right: 0 }

h2:before {
  counter-increment: h2;
  counter-reset:     h3 h4;
  content: counter(h1) "." counter(h2) " ";
  padding-right: 0.5em;
}

h3:before {
  counter-increment: h3;
  counter-reset:     h4;
  content: counter(h1) "." counter(h2) "." counter(h3) " ";
  padding-right: 0.5em;
}

h4:before {
  counter-increment: h4;
}
