  div#Book {
      display: -webkit-flex;
      display: flex;

      -webkit-flex-direction: column;
      flex-direction: column;

      background-color: white;
  }

  div.RuleSection, div.SubRule {
      display: -webkit-flex;
      display: flex;

      -webkit-flex-direction: column;
      flex-direction: column;

      max-width: 800px;

      margin-left: 10px;
      margin-top: 10px;
  }
  
  span.BookTitle {
      font-size: 20px;
      font-weight: bold;
      font-variant: small-caps;
  }

  span.SectionHeader {
      font-size: 20px;
      font-variant: small-caps;
      width: 100%;
      background-color: Moccasin;
      border-bottom: 1px solid maroon;
      color: red;

      text-decoration: none;
      padding-left: 8px;
/*      margin-top: 8px; */
  }
 
  span.RuleHeader {
      font-weight: bold;
      margin-top: 4px;
  }
    
  span.RuleHeader > a,  span.SubRuleHeader > a {
      text-decoration: none;
      color: black;
  }

  span.SubRuleTitle {
      font-style: italic;
      color: red;
      padding-left: 0px;
  }
  
  span.SubRuleHeader {
      margin-left: 40px;
  }

  span.appendixsubheader {
      font-style: italic;
      color: red;
      margin-top: 4px;
      margin-bottom: 4px;
  }


  p {
      max-width: 80%;
  }

  ol#judgeprotocols, ol.alphalist {
      list-style-type: lower-alpha;
  }

  li {
      max-width: 80%;
      padding-bottom: 4px;
  }

  a.xref {
      text-decoration: none;
      color: maroon;
      white-space: nowrap;
  }

  span.mandatoryjudges {
      color: red;
  }

  span.penalty, span.penalty2, span.penaltybackward {
      color: blue;
  }

table#ActionsRule4sub4 {
    margin: 4px;
    margin-left: 10px;
      text-align: center;
      border: 1px solid black;
      border-spacing: 0px;
      padding: 0px;
  }

table#ActionsRule4sub4 th {
    border-bottom: 1px solid black;
}

table#ActionsRule4sub4 tr td:last-child, table#ActionsRule4sub4 tr th:last-child {
    border-left: 1px solid black;
}

table#ActionsRule4sub4 tr th:first-child {
    border-left: 0;
}

table#ActionsRule4sub4 > tbody > tr:nth-child(3n+3) > td {
    border-bottom: 1px solid black;
}

table#ActionsRule4sub4 td  {
    padding: 4px;
}

td.Rule4Situation {
    color: maroon;
}

td.activeAction{
    background-color: gold;
}

td.cardscorrect, span.cardscorrect  {
    background-color: lightgreen;
}

td.cardstoofew, span.cardstoofew  {
    background-color: lightblue;
}

td.cardstoomany, span.cardstoomany  {
    background-color: Moccasin;
}

span.cardsR4 {
    padding: 2px;
    border: 1px solid white;
    white-space: nowrap;
}

div.handsetR4 {
    display: -webkit-flex;
    display: flex;

    -webkit-flex-direction: row;
    flex-direction: row;

    width: 100%;
}

div#ActionsRule4Wrapper {
    position: relative;

    display: -webkit-flex;
    display: flex;

    -webkit-flex-direction: row;
    flex-direction: row;
}

div#ActionsRule4Situation {
    background-color: lightblue;
    position: absolute;

    top: -300px;
    left: 200px;
    width: 300px;

    display: -webkit-flex;
    display: flex;

    -webkit-flex-direction: column;
    flex-direction: column;

    border-style: dashed;
    border-radius: 25px;

    padding: 2px 10px 4px 10px;

    justify-content: space-between;
    text-align: center;

    opacity: 0;
}

table#Rule4Picker {
    margin-left: 20px;
    text-align: center;
    border: 1px solid black;
    border-collapse: collapse;
}

table#Rule4Picker td, table#Rule4Picker th {
    border: 1px solid black;
    padding: 4px;
}

table#R4areatab td {
    vertical-align: top;
}

table#R4areatab tbody td.Rule4Situation {
    background-color: lightblue;
    width: 300px;

    display: -webkit-flex;
    display: flex;

    -webkit-flex-direction: column;
    flex-direction: column;

    justify-content: space-between;
    text-align: center;
}

span#RuleActionTitle, span.R4ActionTitle {
    background-color: gold;
    border-radius: 10px;

    border-bottom: 2px solid black;

    padding: 2px;
}

li.retracted {
    text-decoration: line-through;
}

table#decktable {
    border: 1px solid black;
    text-align: center;
    border-collapse: collapse;
    margin-top: 8px;
}

table#decktable th {
    text-align: center;
    border: 1px solid black;
    padding: 10px;
}

table#decktable td {
    text-align: center;
    border: 1px solid black;
    padding: 10px;
    background-color: white;
}

table#decktable td:nth-child(2n+2) {
    background-color: lightblue;
}

table#definitions {
    border: 1px solid black;
    text-align: center;
    border-collapse: collapse;
    margin-top: 8px;
    text-align: left;
}

table#definitions td {
    border: 1px solid red;
    padding: 2px;
}

table#definitions td.term {
    color: red;
    font-weight: bold;
}

table#definitions tr:nth-child(odd) td {
    background-color: lightblue;
}

div#scoringchartwrapper {
    position: relative;
    top: 0;    
    left: 0;
    margin-left: 40px;
}

table#scoringchart {
    border-collapse: collapse;
    text-align: center;
    background-color: white;

    margin-top: 8px;
}

table#scoringchart tr:nth-child(odd) td {
    background-color: lightblue;
}

table#scoringchart th {
    color: red;
    font-weight: bold;
    border: 1px solid red;
}

table#scoringchart td {
    text-align: left;
    padding-left: 4px;

    border: 1px solid red;
}

table#scoringchart td.scoreval {
    text-align: center;
}

table#scoringchart td.scoringsechead {
    font-weight: bold;
}

table#scoringchart th.cardshead {
    border-top: 0;
    border-left: 0;
}

table#scoringchart td.subscoring  {
    padding-left: 12px;
    border-bottom: 0;
}

table#scoringchart > tbody > tr.subrow > td {
    border: 0;
}

table#scoringchart > tbody > tr.subrow > td.subscoring {
    border-left: 1px solid red;
}

table#scoringchart > tbody > tr.subrow > td.scoreval {
    border-left: 1px solid red;
    border-right: 1px solid red;
}

table#scoringchart tr td.spacer  {
    border: 0;
    background-color: white;
    font-size: 4px;
}

div#disclaimergroup  {
    position: absolute;
    top: 308px;
    left: -48px;
    font-size: 52px;
    font-weight: lighter;
}

div#disclaimergroup > span {
    margin-top: 18px;
}

div#disclaimergroup > span.asterisk, span.smasterisk {
    color: red;
}

div#disclaimergroup > span.brace {
    color: green;
}

table#qualifiers {
    border-collapse: collapse;
    text-align: center;
    background-color: white;

    margin-top: 8px;
}

table#qualifiers th {
    color: red;
}

table#qualifiers td, table#qualifiers th {
    border-top: 1px solid red;
    border-bottom: 1px solid red;
}

table#qualifiers td:nth-child(odd), table#qualifiers th:nth-child(odd) {
    background-color: lightblue;
}

/* 
this fixed my nested list problem.  I was referencing https://stackoverflow.com/questions/10405945/html-ordered-list-1-1-1-2-nested-counters-and-scope-not-working
looking for a solution.  I only partially implemented what I read -- quitting while ahead
*/

/* this is for a numlist within an alpha list (many examples including Rule 1.5) */
ol.alphalist ol.numlist {
    counter-reset: list;
}

ol.alphalist ol.numlist > li {
    list-style: none;
}

ol.alphalist ol.numlist > li {
    display: block;
}

ol.alphalist ol.numlist li::before {
    content: "("counter(list) ") ";
    counter-increment: list;
}

div#QuickReference  {
    display: -webkit-flex;
    display: flex;
    
    -webkit-flex-direction: column;
    flex-direction: column;
    
    background-color: lightblue;
    
    border: 4px solid dodgerblue;
    border-radius: 25px;
    
    padding: 2px 10px 4px 10px;

    align-content: center;
    text-align: center;

    max-width: 300px;

    position: absolute;
    top: 360px;
    left: 500px;
} 

div#QuickReference span.title {
      font-size: 20px;
      font-variant: small-caps;
      font-weight: bold;
      margin-bottom: 12px;
      color: dodgerblue;
      text-decoration: underline;
}

div#rightgalley {
    display: -webkit-flex;
    display: flex;
    
    -webkit-flex-direction: column;
    flex-direction: column;
    
    background-color: white;
    padding-left: 20px;
}

div.galleyarea {
    display: -webkit-flex;
    display: flex;
    
    -webkit-flex-direction: column;
    flex-direction: column;
}

span.areatitle {
    width: 100%;
    text-align: center;
    font-size: 14px;
    font-weight: bold;
}

div.collist {
      display: -webkit-flex;
      display: flex;

      -webkit-flex-direction: column;
      flex-direction: column;

      justify-content: flex-start;
      align-items: center;
}

div.handsetR4 {
      display: -webkit-flex;
      display: flex;

      -webkit-flex-direction: row;
      flex-direction: row;
      align-items: space-around;
}

span.accdisclaimer {
    width: 100%;
    text-align: center;
    color: red;
    font-size: 16px;
    padding: 6px;
}

span.accdisclaimer a {
    text-decoration: none;
    font-weight: bold;
}

span.bracketdesc {
    margin: 8px;
    padding: 4px;
    font-size: 16px;
    font-weight: bold;
}

div#wkshtbracketentry {
    display: -webkit-flex;
    display: flex;
    
    -webkit-flex-direction: row;
    flex-direction: row;
    font-size: 14px;
}

div#wkshtbracketentry > * {
    margin-right: 6px;
}

/* holds the bracket and the MRP breakdown */
div.bracketcontent {
    display: -webkit-flex;
    display: flex;
    
    -webkit-flex-direction: row;
    flex-direction: row;

    justify-content: space-between;
    align-items: flex-start;

/*    background-color: yellow; */
}

div.mrpcontent {
    margin-left: 40px;

/*    background-color: lightblue; */
}

table.mrptab {
    font-size: 16px;
    border: 1px solid black;
    border-collapse: collapse;
    text-align: center;
}

table.mrptab td, table.mrptab th {
    border: 1px solid black;
    padding: 6px;
    white-space: nowrap;
}

.proofingemphasis {
    font-size: 24px;
    font-style: italic;
    color: blue;
}

.italicized {
    font-style: italic;
}

.emboldened {
    font-weight: bold;
}

span.nobreak {
    white-space: nowrap;
}

table#DoublesMisconfigured {
    margin-top: 10px;
    margin-left: 10px;
    border: 1px solid lightgreen;
    border-collapse: collapse;
}

table#DoublesMisconfigured > thead tr:nth-child(odd), table#DoublesMisconfigured > tbody tr:nth-child(even) {
    background-color: lightgreen;
}

table#DoublesMisconfigured th, table#DoublesMisconfigured td {
    padding: 2px;
    border: 1px solid lightgreen;
}

table#DoublesMisconfigured > thead th {
    text-align: center;
}

.printonly {
    display: none;
}

@media print {
    .unprintable {
	display: none;
	}

    .printonly {
	display: inherit;
    }

}

