/*
 * Text format.
 */
p {
  text-align: justify;
}
/*
 * Table format: no cell border and no vertical space between the cells, because our
 * tables are actually more like very long lists. We use different background colors
 * for making easier to identify different sections in those lists.
 */
table {
  border-spacing: 0px;
  white-space: nowrap;
}
/*
 * A table with a light (but non-white) background. This is mixed
 * with the "tr.HL" style for producing a table with striping.
 */
table.withbg {
  background-color: aliceblue
}
/*
 * Table header, which may span more than one lines.
 */
tr.sectionHead > th {
  font-size: 12px;
  border-top-style: solid;
  border-top-width: 1px;
}
tr.sectionTail > th {
  border-bottom-style: solid;
  border-bottom-width: 1px;
}
/*
 * Headers for a sub-section in a table. This is not a real table header, but
 * can be seen as a kind of header for grouping the content of a large table.
 */
tr.groupName > td {
  font-weight: bold;
  color: MidnightBlue;
  border-top-style: solid;
  border-bottom-style: solid;
  border-color: MidnightBlue;
  border-width: 1px;
  padding-top: 3px;
  padding-bottom: 3px;
  background-color: lavender;
}
tr.groupHead > td {
  padding-top: 3px;
}
tr.groupTail > td {
  padding-bottom: 18px;
}
/*
 * Highlighter for a row in a table, or for striping.
 */
tr.HL > td {
  background-color: #d0ebf6;
}
th {
  background-color: lightskyblue;
  height: 18px;
}
th.left-align {
  padding-left:  6px;
  text-align: left;
}
td {
  padding-left:  6px;
  padding-right: 6px;
  vertical-align: top;
}
tr.separator > td {
  color: steelblue;
  font-weight: bold;
  padding-left: 1em;
  background-color: white;
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: lightblue;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: lightblue;
  padding-top: 18px;
}
td.narrow {
  padding-left:  0;
  padding-right: 0;
}
td.error {
  color: red;
}
td.warning {
  font-style: italic;
}
/*
 * The style for list elements that appear directly inside a cell table,
 * without enclosing <ul> element. We don't use <ul> in order to avoid
 * the extra margin on top and bottom. This style is used when each list
 * item appears in its own table cell, as in OperationParametersReport.
 */
td > li {
  margin-left: 18px;
  list-style-type: square;
}
