/* Default HTML 4.01/XHTML 1.0 style sheet, for screen and print 
   presentation.

   First declare display types for elements: recall that most
   elements are by default inline. We declare them so anyway, here
   just for consistency. 

   Note that <form> and form-related properties are defined separately,
   at the bottom of this document.
*/

address, blockquote, body, dd, div, dl, dt, frame, 
   frameset, h1, h2, h3, h4, h5, h6, ol, p, ul, center, dir, hr, menu, pre 
         { display: block }
applet, object, b, strong, i, cite, em, var, tt.code, kbd, samp, u, s, 
   strike, img, big, small, abbr, acronym, dfn, q, span, sub, sup, ins, del
         { display: inline }
li       { display: list-item }
table    { display: table }
tr       { display: table-row }
thead    { display: table-header-group }
tbody    { display: table-row-group }
tfoot    { display: table-footer-group }
col      { display: table-column }
colgroup { display: table-column-group }
td, th   { display: table-cell }
caption  { display: table-caption }
/* 
   Hide head and all head content elements explicitly. Also 
   hide elements that appear in the body but that should 
   not be displayed 
*/

title,base,basefont,style,script,meta,noscript, noframes,param,map,area
         {display: none; }

/* Formatting properties for the document body -- the mother of all
   body elements.  */

body     { margin: 8px; line-height: normal; }

/* Formatting properties for Frame-related elements */

frameset { display: block ! important;
           overflow: hidden; }
frame    { background-color: white; }
iframe   { display: inline;
           border: 2px solid black;
	   background-color: white; }

/* Formatting properties for table and table-content elements */

table    { border-spacing: 2px; 
           border-collapse: separate;
           margin-top: 0;
           margin-bottom: 0; }

table[align=left] 
         { float: left; margin-right: 4px; }
table[align=right] 
         { float: right; margin-left: 4px; }

td,th    { vertical-align: inherit;
           text-align: left; }
th       { text-align: right; font-weight: bold; }
tr       { vertical-align: inherit; }
caption  { text-align: center }
tbody,thead,tfoot    
         { vertical-align: middle; }

/* Formatting Properties for Heading elements */

h1       { font-size: 2em;    margin: 0.67em 0 }
h2       { font-size: 1.5em;  margin: 0.83em 0 }
h3       { font-size: 1.17em; margin: 1em 0 }
h4       {                    margin: 1.33em 0 }
h5       { font-size: .83em;  margin: 1.67em 0;
           line-height: 1.17em; }
h6       { font-size: .67em;  margin: 2.33em 0 }
h1, h2, h3, h4, h5, h6
         { font-weight: bolder }

/* Formatting Properties for remaining (non-list) block elements */

blockquote  
         { margin: 1em 40px; }
pre      { white-space: pre; 
           margin: 1em 0;
           font-family: monospace;}
p        { margin: 1em 0 }
hr       { border: 1px inset; 
           margin: 0 auto; }
center   { text-align: center }
address  { font-family: italic; }

/* Formatting properties for list elements. This is messy and
   not quite correct, as id does not support counter resetting
   coming from HTML attributes.
   */

ul, menu, dir 
         { list-style-type: disc;
           margin: 1em 0;
           padding-left: 40px; }

ol       { list-style-type: decimal;
           margin: 1em 0;
           padding-left: 40px; }

/* make orphaned li's (i.e., li's not in a list) to have inside bullet */
li       { display: list-item;
           list-style-position: inside; }

/* restore outside position for lists inside li's */
li ul, li ol, li dir, li menu 
         { list-style-position: outside; }

/* undo previous two rules for properly nested lists */
ul li,       dir li,  menu li,  ol li,   ul ul,   ul dir,   ul menu,  ul ol,
    dir ul,  dir dir, dir menu, dir ol,  menu ul, menu dir, menu menu, 
    menu ol, ol ul,   ol dir,   ol menu, ol ol 
         { list-style-position: inherit; }

/* set correct margins: nested lists have no top/bottom margins */
ul ul,        ul ol,   ul menu, ul dir,    menu ul, menu ol, menu menu, 
    menu dir, dir ul,  dir ol,  dir menu,  dir dir, ol ul,   ol ol,   
    ol menu,  ol dir
         { margin-top: 0;
           margin-bottom: 0; }

/* Set correct list bullet type for 2-deep unordered items */

ol ul,       ul ul,   menu ul,   dir ul,
    ol menu, ul menu, menu menu, dir menu,
    ol dir,  ul dir,  menu dir,  dir dir
         { list-style-type: circle; }

/* Set correct list bullet type for 3-deep unordered lists. This
   also (by implication), works for all higher-order list nestings.  */ 

ol ol ul,       ol ul ul,   ol menu ul,   ol dir ul,
    ol ol menu, ol ul menu, ol menu menu, ol dir menu,
    ol ol dir,  ol ul dir,  ol menu dir,  ol dir dir,
    ul ol ul,   ul ul ul,   ul menu ul,   ul dir ul,
    ul ol menu, ul ul menu, ul menu menu, ul dir menu,
    ul ol dir,  ul ul dir,  ul menu dir,  ul dir dir,
    menu ol ul,   menu ul ul,   menu menu ul,   menu dir ul,
    menu ol menu, menu ul menu, menu menu menu, menu dir menu,
    menu ol dir,  menu ul dir,  menu menu dir,  menu dir dir,
    dir ol ul,   dir ul ul,   dir menu ul,   dir dir ul,
    dir ol menu, dir ul menu, dir menu menu, dir dir menu,
    dir ol dir,  dir ul dir,  dir menu dir,  dir dir dir
         { list-style-type: square; }

dl       { margin: 1em 0; }
dl[compact] > dt 
         {  /* compact actually allowed on DL, OL, UL, DIR MENU */
           display: compact; }
dd       { margin-left: 40px; }
dl dl    { margin: 0 0 0 40px; }
dt dl, dd dl 
         { margin: 0; }

/* Special properties for inline img images */

img[align=left]  { margin-right: 4px; }
img[align=right] { margin-left: 4px; }


/* Active images or objects */

:link img, :visited img, :link:active img, :visited:active img, 
   img[usemap], object[usemap] 
         { border: 2px solid;
           cursor: pointer; }

img[usemap], object[usemap] { color: blue; }



/* Formatting properties for generic inline elements */
tt, code, kbd, samp 
         { font-family: monospace }
i, cite, em, var
         { font-style: italic }
big      { font-size: 1.17em }
b,strong {font-weight: bolder; }
q:before { content: open-quote; }
q:after  { content: close-quote; }
small, sub, sup 
         { font-size: smaller }
sub      { vertical-align: sub }
sup      { vertical-align: super }
s,strike { text-decoration: line-through }
u        { text-decoration: underline }
br       { display: inline; clear: both; }
br:before { content: "\A" }  
abbr, acronym 
         { font-variant: small-caps; letter-spacing: 0.1em }

/* Formatting properties for ins and del element. Note that 
   ins/del are of display: inline */

ins      { text-decoration: underline; }
del      { text-decoration: line-through; }

/* Formatting properties for links and linked text. Note some
   duplication to allow for XXX */

a[href]  { color: blue;
           text-decoration: underline ;
	   cursor: pointer; }
:link    { color: blue;    
           text-decoration: underline;
           cursor: pointer; }
:visited { color: purple;  
           text-decoration: underline;
           cursor: pointer; }
:link:focus, :visited:focus, :link:focus img, :visited:focus img
         { outline: 1px dotted black; }
:link:active, :visited:active
         { color: red;     
	   text-decoration: underline;
           cursor: pointer; }



/* Formatting properties for non-standard elements */

layer    { display: block;  position: absolute;}
ilayer   { display: inline; position: relative;}
nobr     { display: inline; white-space: nowrap; }
embed    { display: inline}
noembed  { display: none; }
multicol { display: block;  margin: 1em 0}
blink    { display: inline; text-decoration: blink; }
spacer   { display: inline; }
wbr      { display: inline; }

/* Old Junky Elements 

plaintext, xmp, listing
         { display: block;   
	   font-family: monospace;
	   white-space: pre; 
	   margin: 1em 0 }

listing  { font-size: medium; }


/* Formatting properties for FORM and form-content elements */

form, fieldset     
         { display: block; }
button, input, select, legend, label  
         { display: inline; }

form     { margin: 1em 0;} 

legend   { padding-left: 2px; 
           padding-right: 2px;
           border: 2px solid black; }
 
fieldset { margin-left: 2px; 
           margin-right: 2px;
           padding: 4px;     
	   border: 2px solid black }

input    { vertical-align: bottom;
           border: 2px inset rgb(204, 204, 204);
           color: black; }
input[type=hidden] 
         { border: none;
           visibility: collapse; }

input[type=image] 
         { border: 2px solid blue;
           vertial-align: baseline; }

input[type=image]:focus 
         { border: 2px dotted black; }

input[type=image][disabled] 
         { border: 2px solid rgb(153, 153, 153);
           cursor: default; }

input[type=file] 
         { white-space: nowrap;
           border:none; }

/* browse button for file selector */
input[type=file] input[type="button"]              
         { height:inherit; }

/* Show browse button inside the file selector disabled */
input[type=file][disabled] input[type="button"]    
         { border: 1px solid; } 

/* Show browse button disabled */
input[type="file"][disabled] input[type="button"]  
         { color: gray; }


input[type=radio] {
  /* these margins are for NavQuirks, we need a Standard ua.css */  
        margin-left:   3px;   
        margin-right:  5px;  
        margin-top:    2px; 
        margin-bottom: 4px; 
        border: 2px outset rgb(153, 153, 153);
        background-color:rgb(204, 204, 204);
        color:black;
        width:12px;
        height:12px; }

input[type=radio][disabled] { border: 1px solid; }
input[type=radio]:focus     { border: 2px inset rgb(153, 153, 153); }
input[type=radio]:hover     { border : 2px solid black; }
input[type=radio]:active    { background-color: white; }
input[type=radio][disabled]:hover { border: 1px solid rgb(153, 153, 153); }
input[type=radio][disabled]:active { background-color: rgb(204, 204, 204); }

input[type=checkbox] {
        /* these margins give odd Navigator paddings/margins */
        padding-top:   0px;
        padding-left:  0px;
        padding-right: 1px;
        padding-bottom:1px;
        margin-left:   3px;   
        margin-right:  4px;  
        margin-top:    3px; 
        margin-bottom: 3px;
        border: 2px inset rgb(153, 153, 153);
        background-color:rgb(204, 204, 204);
        width:13px;
        height:13px;
        color:black; }

input[type=checkbox]:focus            { border: 2px dotted rgb(153, 153, 153); }
input[type=checkbox]:hover            { border : 2px solid black; }
input[type=checkbox]:active           { background-color: white; }
input[type=checkbox][disabled]        { border: 2px solid; }
input[type=checkbox][disabled]:hover  { border: 2px solid rgb(153, 153, 153); }
input[type=checkbox][disabled]:active { background-color:rgb(204, 204, 204); }

/* submit */
input[type="submit"] { 
        border: 2px outset rgb(156, 154, 156);
        background-color: rgb(206, 207, 206);
        color:black; 
        padding: 1px; }

input[type="submit"]:hover { border : 2px solid black; }

input[type="submit"]:active {
  border-style: inset;
  padding-left: 2px;
  padding-right: 0px;
  padding-top: 2px;
  padding-bottom: 0px; }

input[type="submit"]:hover            { border : 1px solid black; }
input[type="submit"]:active           { border : 1px solid black; }
input[type="submit"][disabled]        { border: 1px solid; }
input[type="submit"][disabled]:hover  { border: 1px solid rgb(156, 154, 156); }
input[type="submit"][disabled]:active { padding: 1px; }
input[type="submit"][disabled]        { color: gray; }

input[type="submit"]:focus {
         padding-left  : 1px;
         padding-right : 1px;
         padding-top   : 0px;
         padding-bottom: 0px;
         margin: 0px;
         border : 1px dotted black; }


/* reset */
input[type="reset"] { 
         border: 2px outset rgb(156, 154, 156);
         background-color: rgb(206, 207, 206);
         color:black; 
         padding: 1px; }

input[type="reset"]:hover            { border : 2px solid black; }
input[type="reset"]:hover            { border : 1px solid black; }
input[type="reset"]:active           { border : 1px solid black; }
input[type="reset"][disabled]        { border: 1px solid; }
input[type="reset"][disabled]:hover  { border: 1px solid rgb(156, 154, 156); }
input[type="reset"][disabled]:active { padding: 1px; }
input[type="reset"][disabled]        { color: gray; }

input[type="reset"]:active {
         border-style: inset;
         padding-left: 2px;
         padding-right: 0px;
         padding-top: 2px;
         padding-bottom: 0px; }

input[type="reset"] {
          padding-left  : 2px;
          padding-right : 2px;
          padding-top   : 1px;
          padding-bottom: 1px;
          margin: 0px; }

input[type="reset"]:focus {
          padding-left  : 1px;
          padding-right : 1px;
          padding-top   : 0px;
          padding-bottom: 0px;
          margin: 0px;
          border : 1px dotted black; }


/* button */
input[type="button"] { 
         border: 2px outset rgb(156, 154, 156);
         background-color: rgb(206, 207, 206);
         color:black; 
         padding: 1px; }

input[type="button"]:hover {
   border : 2px solid black;
}

input[type="button"]:active {
  border-style: inset;
  padding-left: 2px;
  padding-right: 0px;
  padding-top: 2px;
  padding-bottom: 0px;
}

input[type="button"]:hover { border : 1px solid black; }

input[type="button"]:active { border : 1px solid black; }

input[type="button"][disabled] {
   border: 1px solid;
}

input[type="button"][disabled]:hover {
  border: 1px solid rgb(156, 154, 156);
}

input[type="button"][disabled]:active {
  padding: 1px;
}

input[type="button"][disabled] { color: gray; }


input[type="button"]  {
   padding-left  : 1px;
   padding-right : 1px;
   padding-top   : 0px;
   padding-bottom: 0px;
   margin: 0px;
   border : 1px solid rgb(206, 207, 206);
}

input[type="button"]:focus {
   padding-left  : 1px;
   padding-right : 1px;
   padding-top   : 0px;
   padding-bottom: 0px;
   margin: 0px;
   border : 1px dotted black;
}


button { 
  display: inline;
  vertical-align: bottom;
  cursor: default;

  border: 2px outset rgb(156, 154, 156);
  background-color: rgb(206, 207, 206);
  color:black; 

  padding: 1px;
}

button:hover {
   border : 2px solid black;
}

button:active {
  border-style: inset;

  padding-left: 2px;
  padding-right: 0px;
  padding-top: 2px;
  padding-bottom: 0px;
}

button:hover { border : 1px solid black; }

button:active { border : 1px solid black; }

button[disabled] {
   border: 1px solid;
   color: gray;
}

button[disabled]:hover {
  border: 1px solid rgb(156, 154, 156);
}

button[disabled]:active {
  padding: 1px;
}

button {
   padding-left  : 2px;
   padding-right : 2px;
   padding-top   : 1px;
   padding-bottom: 1px;
   margin: 0px;
}

button:focus {
   padding-left  : 1px;
   padding-right : 1px;
   padding-top   : 0px;
   padding-bottom: 0px;
 
   margin: 0px;
   border : 1px dotted black;
}

input[type=text] {
  font-family: monospace;
  border: 2px inset rgb(204, 204, 204); /* for Nav Quirks */
  padding: 0px;                         /* for Nav Quirks */
  background-color: white;
  color: black;
  padding: 0px;
  margin-top:    1px;
  margin-bottom: 1px;
  margin-left:   0px;
  margin-right:  0px;
} 

input[type=text][disabled] {
  color: gray;
}

input[type=password] {
  border: 2px inset rgb(204, 204, 204);
  background-color: white;
  color:black;
}

input[type=password][disabled] {
  color: gray;
}

label {
  display: inline;
  vertical-align: bottom;
  padding-left: 3px;
  padding-right: 3px;
}

select[size] {
  font-family: sans-serif;
  font-size: small;
  background-color: white;
  border: 2px inset rgb(153, 153, 153);
  padding-left:   0px;
  padding-top:    1px;
  padding-right:  0px;
  padding-bottom: 1px;
}

select, select[size="1"] {
  font-family: sans-serif;
  font-size: small;
  background-color: white;
  border: inset 2px rgb(192, 192, 192);
  padding-left:   0px;
  padding-top:    0px;
  padding-right:  0px;
  padding-bottom: 0px;
  margin: 0px 0px 0px 0px;
  vertical-align: bottom;
  background-color:rgb(204, 204, 204);  
  color:black;
  white-space:nowrap;
  text-align: left; 
}

select[size][disabled] {
  background-color:rgb(204, 204, 204);  
  border: 2px inset rgb(153, 153, 153);
}

select[multiple] {
  background-color: white;
  border: 2px inset rgb(153, 153, 153);
  padding-left:   0px;
  padding-top:    0px;
  padding-right:  3px;
  padding-bottom: 0px;
}

select[multiple][disabled] {
  background-color:rgb(204, 204, 204);  
  border: 2px inset rgb(153, 153, 153);
}

select[disabled] {
  background-color: rgb(204, 204, 204);
  border: 2px inset rgb(153, 153, 153);
}

select[multiple][size="1"] {
  background-color: white;
  border: 2px inset rgb(153, 153, 153);
  padding-left:   0px;
  padding-top:    0px;
  padding-right:  3px;
  padding-bottom: 0px;
}

/* combobox button */
select input[type="button"] {
  white-space:nowrap;
  border: outset 2px rgb(204, 204, 204);
  background-image:url("arrow.gif");
  background-repeat:no-repeat;
  background-position:center;
  width:12px;
  height:12px;
}

/* combobox button depressed */
select input[type="button"]:active {
  background-image:url("arrowd.gif");
  padding:1px;
}

select[disabled] input[type="button"] {
  border: solid 1px rgb(204, 204, 204);
}



option {
  min-height: 1em;
  display:block;
  font-family: sans-serif;
  font-size: small;
}

select[size] option {
  padding-left:   3px;
  padding-top:    0px;
  padding-right:  11px;
  padding-bottom: 0px;
}

select option, select[size="1"] option {
  padding-left:   3px;
  padding-top:    0px;
  padding-right:  5px;
  padding-bottom: 0px;
}

select[disabled] option {
  color:rgb(153, 153, 153);
  background-color:white; 
}


select option[disabled] {
  color:rgb(153,153,153); 
  background-color:rgb(204,204,204); 
}

optgroup {
  font-family: sans-serif;
  font-size: small;
  display:block;
  font-style:italic;
  font-weight:bold;
}

optgroup option {
  display:block;
  padding-left:20px;
  font-style:normal;
  font-weight:normal;
}

optgroup:before {
  display:block;
  content:attr(label);
}

select[size]:focus {
  border: 2px dotted rgb(128,128,128);
  padding-left:   0px;
  padding-top:    1px;
  padding-right:  0px;
  padding-bottom: 1px;
}

select:focus, select[size="1"]:focus {
  border: 2px dotted rgb(128,128,128);
  padding-left:   0px;
  padding-top:    0px;
  padding-right:  0px;
  padding-bottom: 0px;
}

select[multiple]:focus {
  border: 2px dotted rgb(128,128,128);
  padding-left:   0px;
  padding-top:    0px;
  padding-right:  3px;
  padding-bottom: 0px;
}

/* Begin - Margin setting for form controls inside tables for Nav Quirks */

td select[size] {
  margin-top:    0px;
  margin-bottom: 1px;
}

td select, td select[size="1"] {
  margin-top:    2px;
  margin-bottom: 2px;
}

td input[type="text"] {
  margin-top:    1px;
  margin-bottom: 1px;
}

td input[type="checkbox"] {
  margin-bottom: 1px;
}

td input[type="radio"] {
  margin-bottom: 1px;
}

td textarea {
  margin-top: 1px;
  margin-bottom: 2px;
}

/* End - Margin setting for form controls inside tables for Nav Quirks */

textarea {
  font-family:monospace;
  vertical-align: bottom;
  border: 2px inset #c0c0c0;
  background-color:white;
  color:black;
  padding:   0px;
  margin-top:    1px;
  margin-bottom: 1px;
  margin-left:   0px;
  margin-rigth:  0px;
}

textarea[disabled] {
  color: gray;
}




/* Bidirectionality settings (do not change)  -- these will do the
   right things */

bdo[dir="ltr"] { direction: ltr; unicode-bidi: bidi-override }
bdo[dir="rtl"] { direction: rtl; unicode-bidi: bidi-override }
*[dir="ltr"]   { direction: ltr; unicode-bidi: embed }
*[dir="rtl"]   { direction: rtl; unicode-bidi: embed }
/* All block elements should use unicode-bidi: embed: */
address, blockquote, body, dd, div, dl, dt, fieldset,
    form, frame, frameset, h1, h2, h3, h4, h5, h6, iframe,
    noscript, noframes, object, ol, p, ul, applet, center,
    dir, hr, menu, pre, li, table, tr, thead, tbody, tfoot,
    col, colgroup, td, th, caption
               { unicode-bidi: embed }   

/* Now set up extra properties for printed pages: */

@media print {
  @page { margin: 10% }
  h1, h2, h3, h4, h5, h6 
        { page-break-after: avoid; page-break-inside: avoid }
  blockquote, pre { page-break-inside: avoid }
  ul, ol, dl      { page-break-before: avoid }
}

/* Now set up extra properties for speech-synthesizers  */

@media speech {
  h1, h2, h3, h4, h5, h6 
              { voice-family: paul, male; stress: 20; richness: 90 }
  h1          { pitch: x-low; pitch-range: 90 }
  h2          { pitch: x-low; pitch-range: 80 }
  h3          { pitch: low; pitch-range: 70 }
  h4          { pitch: medium; pitch-range: 60 }
  h5          { pitch: medium; pitch-range: 50 }
  h6          { pitch: medium; pitch-range: 40 }
  li, dt, dd  { pitch: medium; richness: 60 }
  dt          { stress: 80 }
  pre,code,tt { pitch: medium; pitch-range: 0; stress: 0; richness: 80 }
  em          { pitch: medium; pitch-range: 60; stress: 60; richness: 50 }
  strong      { pitch: medium; pitch-range: 60; stress: 90; richness: 90 }
  dfn         { pitch: high; pitch-range: 60; stress: 60 }
  s, strike   { richness: 0 }
  i           { pitch: medium; pitch-range: 60; stress: 60; richness: 50 }
  b           { pitch: medium; pitch-range: 60; stress: 90; richness: 90 }
  u           { richness: 0 }
  a:link      { voice-family: harry, male }
  a:visited   { voice-family: betty, female }
  a:active    { voice-family: betty, female; pitch-range: 80; pitch: x-high }
}
