/* head {display: block;}
   title {display: block; font-size: 2em; margin: .67em 0; font-weight: bolder;} */

/* The CSS validator is complaining about this color specification.  I
   have no idea why.  Can anyone explain why it is unhappy? */
body {background-color: rgb(100%,100%,100%);} /* white */

h1 {border: 0 solid; border-bottom-width: 3px;}
h2 {border: 0 double rgb(50%,50%,50%); border-bottom-width: 3px;}
h3 {border: 0 solid rgb(50%,50%,50%); border-bottom-width: 1px;}

/* Netscape renders ridge, groove, and inset borders in the outset
   style.  Netscape renders dashed and dotted borders as solid.
   Hence, Netscape's border repertoire is: solid, double, outset. */

/* Netscape does not appear to understand the border-bottom
   property. */

/* The recommended user-agent values from the CSS 2.0
   specification are as follows:

     h1 {font-size: 200%;}
     h2 {font-size: 150%;}
     h3 {font-size: 117%;}

   Unfortunately, Netscape appears to ignore settings of the font-size
   property.

   Fortunately, it pays attention to font-size values given as part of
   the font property.  Unfortunately, the font property requires
   specifying a font-family, which will override the user's
   preferences.  We could do this, roughly:

     h1 {font: bold 168% serif;}
     h2 {font: bold 141% serif;}
     h3 {font: bold 119% serif;}

   Unfortunately, Netscape seems to always do scaling for font-size
   values given as percentages, and the result generally looks
   horrible, unless it happens to exactly match one of the built-in
   sizes.

   We can use the absolute-size keywords, like this:

     h1 {font: bold x-large serif;}
     h2 {font: bold large serif;}
     h3 {font: bold medium serif;}

   The good feature is that these font sizes almost always look
   smooth.  Unfortunately, the absolute-size keywords have horrible
   sizes.  The size xx-large is horribly huge.  The medium size can be
   smaller than the user-chosen main text size.

   Basically, my conclusion is that there is no reasonable way to
   guarantee that the font-size values of h1, h2, h3, and all other
   text are strictly descending.
*/

/* Serif fonts:
     Times, Bookman, Palatino, 'New Century Schoolbook', Lucidabright
   Serif fonts for which larger sizes are italic when scaling is
   turned off:
     Charter, Utopia
   Sans-serif fonts:
     Lucida, Grarial, Helvetica
   Cursive fonts:
     Zapf Chancery

   Netscape comes with Times (Adobe) with sizes 0, 8, 10, 12, 14, 18,
   24 (which are each bigger than the previous size by factors of
   1.25, 1.20, 1.17, 1.29, and 1.33).

   The size 0 is the same as 12.  When you set the size to 14 and
   scaling is off, h2 and h3 elements are set in the main text size
   and h1 elements are set in size 18.  When you set the size to 18
   and scaling is off, h1, h2, and h3 elements are all set in the main
   text size.
*/

p { margin: 0.2em; text-indent: 20px; } /* text-indent: 2% */
li p { margin: 0; }

blockquote {
  margin: 1.33em 0 /* from default style sheet in CSS2 standard */
  margin-left: 40px; /* from default style sheet in CSS2 standard */
  margin-right: 40px; /* from default style sheet in CSS2 standard */
  page-break-inside: avoid; /* from default style sheet in CSS2 standard */
  border: solid #696 1px;
  padding: 3px;
  /* background: #f9f9f9 none; */
  /* color: #000; */
}

/* This doesn't work well for my bibliography, because the initial
   text of an abstract is not put inside any element, so the 2nd
   paragraph is often the 1st child element.  I should fix my HTML
   generator for the bibliography to ensure there is an initial
   element of some sort. */
blockquote p { text-indent: 0; }
blockquote p { margin: 0; margin-top: 1.5ex; }
blockquote p:first-child { margin: 0; }

li p:first-child { text-indent: 0pt; }

/* There is unfortunately no value for "font-weight" which gives the
   default behavior of inheriting the parent's font-weight.  So here
   we are assuming the parent's font-weight is normal. */
/* For some bizarre reason, Netscape weirdly applies its default rules
   to some TH elements, ignoring this rule. */
th {font-weight: normal; text-decoration: underline;}

/* The fake-dt class is used for working around a browser bug where
   the DT element is treated like a BR element, i.e., it is
   immediately closed, has no content, and the later </dt> tag is
   simply ignored.  So we put the content of the DT element inside a
   SPAN element with class fake-dt. */
.fake-dt {margin-left: 15px; text-decoration: underline;} /* margin-left: 1.5% */

/* The following is only turned on for debugging. */
/* p {border: 1px solid red; border-bottom-width: 0;} */
