/*
 * The contents of this file are subject to the Netscape Public
 * License Version 1.1 (the "License"); you may not use this file
 * except in compliance with the License. You may obtain a copy of
 * the License at http://www.mozilla.org/NPL/
 *
 * Software distributed under the License is distributed on an "AS
 * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
 * implied. See the License for the specific language governing
 * rights and limitations under the License.
 *
 * The Original Code is mozilla.org code.
 *
 * The Initial Developer of the Original Code is Netscape
 * Communications Corporation.  Portions created by Netscape are
 * Copyright (C) 1998 Netscape Communications Corporation. All
 * Rights Reserved.
 *
 * Contributor(s): 
 */

@namespace url(http://www.w3.org/TR/REC-html40); /* set default namespace to HTML */
@namespace viewsource url(http://www.mozilla.org/viewsource); 

html {
  display: block;
}

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

body > *:first-node, td > *:first-node {
  margin-top: 0;
}

frameset {
  display: block ! important;
  overflow: hidden;
}

frame {
  background-color: white;
}

iframe {
  background-color: white;
}

/* focusable content */
a, area, button, input, object, select, textarea {
  user-focus: normal;
}

option {
  user-focus: none;
}

/* blocks */

p {
  display: block;
  margin: 1em 0;
}
address {
  display: block;
  font-style: italic;
}
blockquote {
  display: block;
  margin: 1em 40px;
}
blockquote[type=cite] {
  display: block;
  margin: 1em 0px;
  padding-left: 1em;
  border-left: solid;
  border-color: blue;
  border-width: thin;
}
center {
  display: block;
  text-align: -moz-center;
}
div {
  display: block;
}

h1 {
  display: block;
  font-size: 2em;
  font-weight: bold;
  margin: .67em 0;
}
h2 {
  display: block;
  font-size: 1.5em;
  font-weight: bold;
  margin: .83em 0;
}
h3 {
  display: block;
  font-size: 1.17em;
  font-weight: bold;
  margin: 1em 0;
}
h4 {
  display: block;
  font-weight: bold;
  margin: 1.33em 0;
}
h5 {
  display: block;
  font-size: 0.83em;
  font-weight: bold;
  margin: 1.67em 0;
}
h6 {
  display: block;
  font-size: 0.67em;
  font-weight: bold;
  margin: 2.33em 0;
}
listing {
  display: block;
  font-family: -moz-fixed;
  font-size: medium;
  white-space: pre;
  margin: 1em 0;
}
plaintext, xmp, pre {
  display: block;
  font-family: -moz-fixed;
  white-space: pre;
  margin: 1em 0;
}
pre[wrap] {
  white-space: -moz-pre-wrap;
}
pre[cols] {
  white-space: -moz-pre-wrap;
}
pre[width] {
  white-space: -moz-pre-wrap;
}
multicol {
  display: block;
  margin: 1em 0;
}

/* tables */

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

/* must never set padding in td, th */
td {
  vertical-align: inherit;
  text-align: inherit; 
  display: table-cell;
}
th {
  font-weight: bold;
  vertical-align: inherit;
  display: table-cell;
}
caption {
  text-align: center;
  display: table-caption;
}
tr {
  display: table-row;
  vertical-align: inherit;
}
tbody {
  display: table-row-group;
  vertical-align: middle;
}
thead {
  display: table-header-group;
  vertical-align: middle;
}
tfoot {
  display: table-footer-group;
  vertical-align: middle;
}
col {
  display: table-column;
}
colgroup {
  display: table-column-group;
}

/* spans */

q:before {
  content: open-quote;
}
q:after {
  content: close-quote;
}

:link {
  color: blue;
  text-decoration: underline;
  cursor: pointer;
}
:visited {
  color: purple;
  text-decoration: underline;
  cursor: pointer;
}
:link:focus, :visited:focus, :out-of-date:focus,
:link:focus img, :visited:focus img, :out-of-date:focus img {
  outline: 1px dotted black;
}
:link:active, :visited:active, :out-of-date:active {
  color: red;
  text-decoration: underline;
  cursor: pointer;
}
:out-of-date {
  color: lime;
  text-decoration: underline;
  cursor: pointer;
}
b, strong {
  display: inline;
  font-weight: bolder;
}
i, cite, em, var {
  display: inline;
  font-style: italic;
}
tt, code, kbd, samp {
  display: inline;
  font-family: -moz-fixed;
}
u {
  display: inline;
  text-decoration: underline;
}
s, strike {
  display: inline;
  text-decoration: line-through;
}
blink {
  display: inline;
  text-decoration: blink;
}
big {
  display: inline;
  font-size: larger;
}
small {
  display: inline;
  font-size: smaller;
}
abbr, acronym, del, dfn, ins, q, span {
  display: inline;
}
ins { text-decoration: underline; }
del { text-decoration: line-through; }
dfn { font-style: italic; }
sub, sup {
  display: inline;
  font-size: smaller;
  line-height: normal;
}
sub {
  vertical-align: sub;
}
sup {
  vertical-align: super;
}
nobr {
  display: inline;
  white-space: nowrap;
}
legend {
  display: inline;
	padding-left: 2px;
	padding-right: 2px;
  border: 2px solid black;
}
fieldset {
  display: block;
  border: 2px solid black;
	padding: 4px;
	margin-left: 2px;
	margin-right: 2px;
}

/* lists */

:-moz-list-bullet {
  display: inline;
  vertical-align: baseline;
  margin-right: 8px;
}

ul, menu, dir {
  display: block;
  list-style-type: disc;
  margin: 1em 0;
  padding-left: 40px;
  counter-reset: -html-counter 0;
  float-edge: margin-box;
}

ol {
  display: block;
  list-style-type: decimal;
  margin: 1em 0;
  padding-left: 40px;
  counter-reset: -html-counter 0;
  float-edge: margin-box;
}

/* make orphaned li's 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;
}

/* 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;
}

/* 2 deep unordered lists use a circle */
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;
}

/* 3 deep (or more) unordered lists use a square */
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 {
  display: block;
  margin: 1em 0;
}
dt {
  display: block;
}
dl[compact] > dt {  /* compact allowed on DL, OL, UL, DIR MENU */
  display: compact;
}
dd {
  display: block;
  margin-left: 40px;
}
dl dl {
  margin: 0 0 0 40px;
}
dt dl, dd dl {
  margin: 0;
}

/* leafs */

embed {
  display: inline;
}
hr {
  display: block;
  border: 1px -moz-bg-inset;
  margin: 0 auto;
}
br {
  display: inline;
  color: cyan;
}
img {
  display: inline;
}
:link img, :visited img, :out-of-date img,
:link:active img, :visited:active img, :out-of-date:active img,
img[usemap], object[usemap] {
  border: 2px solid;
  cursor: pointer;
}
img[usemap], object[usemap] {
  color: blue;
}
img:-moz-text {
  /* font-family: sans-serif; */
  /* font-size: 8.5pt; */
}
spacer {
  display: inline;
}
wbr {
  display: inline;
}
iframe {
  display: inline;
  border: 2px solid black;
}
form {
  display: block;
  margin: 0 0 1em 0;
}


input {
  vertical-align: bottom;
	text-align: left;
  border: 2px inset rgb(204, 204, 204);
  color: black;
	background-color: white;
  box-sizing: border-box;
  font-family:-moz-fixed;
  behavior: url("resource:/chrome/platformHTMLBindings.xml#inputFields");
}

input[type=hidden] {
  border: none;
  visibility: collapse;
  behavior: none;
}

input[type=image] {
  box-sizing: border-box;
  border: 2px solid blue;
  vertical-align:baseline;
  behavior: none;
  background-color: inherit;
}

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

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

input[type=file] {
  box-sizing: border-box;
  white-space: nowrap;
  border:none;
  behavior: 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;
} 

input[type=file] input[type="button"] {
  font-family: sans-serif;
}

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


input[type=radio] {
  box-sizing: border-box;
  /* 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;
  behavior: none;
  -moz-border-radius:6px;
}

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);
}

:-moz-radio {
  background-color:black;
  width:6px;
  height:6px;
  left:6px;
  top:6px;
  -moz-border-radius:3px;
}


input[type=checkbox] {
  box-sizing: border-box;
  /* these margins are for NavQuirks, we need a Standard ua.css */  
  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;
  behavior: none;
/*  -moz-border-radius:1px; */
}

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"] { 
  box-sizing: border-box;
  border: 2px outset rgb(156, 154, 156);
  background-color: rgb(206, 207, 206);
  color:black; 

  padding: 1px;
  font-family: sans-serif;
  font-size: small;

  behavior: none;
}

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:-moz-outline {
   border : 1px solid black;
}

input[type="submit"]:active:-moz-outline {
   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"]:-moz-focus-inner {
   padding-left  : 2px;
   padding-right : 2px;
   padding-top   : 1px;
   padding-bottom: 1px;
   margin: 0px;
}

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

input[type=submit] {
  font-family: sans-serif;
  font-size: small;
}

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


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

  padding: 1px;
  font-family: sans-serif;
  font-size: small;
  behavior: none;
}

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

input[type="reset"]:active {
  border-style: inset;

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

input[type="reset"]:hover:-moz-outline {
   border : 1px solid black;
}

input[type="reset"]:active:-moz-outline {
   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"]:-moz-focus-inner {
   padding-left  : 2px;
   padding-right : 2px;
   padding-top   : 1px;
   padding-bottom: 1px;
   margin: 0px;
}

input[type="reset"]:focus:-moz-focus-inner {
   padding-left  : 1px;
   padding-right : 1px;
   padding-top   : 0px;
   padding-bottom: 0px;
 
   margin: 0px;
   border : 1px dotted black;
}
input[type=reset] {
  font-family: sans-serif;
  font-size: small;
}

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

/* button */
input[type="button"] { 
  box-sizing: border-box;
  border: 2px outset rgb(156, 154, 156);
  background-color: rgb(206, 207, 206);
  color:black; 
  padding: 1px;
  font-family: sans-serif;
  font-size: small;
  behavior: none;
}

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:-moz-outline {
   border : 1px solid black;
}

input[type="button"]:active:-moz-outline {
   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"]:-moz-focus-inner {
/*XXX[PERF] Set the padding to match between
  focus changes to prevent reflow */
   padding-left  : 1px;
   padding-right : 1px;
   padding-top   : 0px;
   padding-bottom: 0px;
   margin: 0px;
/*XXX[PERF] setup a border so the size does 
  not change between focus changes to prevent 
  reflows */
   border : 1px solid rgb(206, 207, 206);
}

input[type="button"]:focus:-moz-focus-inner {
   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;
  box-sizing: border-box;

  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:-moz-outline {
   border : 1px solid black;
}

button:active:-moz-outline {
   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:-moz-focus-inner {
   padding-left  : 2px;
   padding-right : 2px;
   padding-top   : 1px;
   padding-bottom: 1px;
   margin: 0px;
}

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

input[type="text"] {
  box-sizing: border-box;
  font-family:-moz-fixed;
  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: 0px;
  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;
}

/* Combo box style */
select:-moz-display-comboboxcontrol-frame {
  overflow:hidden;
	white-space:nowrap;
	background-color: inherit;
	color: inherit;
	text-align: inherit;
  padding-left:   4px;
  padding-right:  5px;
  padding-bottom: 1px;
  padding-top:    1px;
}

select:-moz-dummy-option { 
  visibility: hidden; 
  content: "XX"; 
}

select[size] {
  box-sizing: border-box;
  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"] {
  box-sizing: border-box;
  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;
  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][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);
}

/* combobox button */
select > input[type="button"] {
  user-focus: none;
  position: static !important;
  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;
  -moz-border-radius:0px;
}

/* 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);
}


/* combobox display area */
select > input:button-content {
  text-align: left;
}

select[disabled]:-moz-display-comboboxcontrol-frame {
  color: gray;
}

option {
  min-height: 1em;
  display:block;
  font-family: inherit;
  font-size: inherit;
  user-select: none;
}

/* we need to address the part where there is a label */
/* and content. The CSS3 content property would be handy for this */
option[label]:before { 
  content:attr(label);
}

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

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


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

/* Combobox item style */
select option[-moz-option-selected] {
 color:white;
 background-color:rgb(51,51,102); 
}

/* List box item selected style */
select option[disabled][-moz-option-selected] {
  color:rgb(153,153,153); 
  background-color:rgb(204,204,204); 
}

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

select[size] option[-moz-option-selected] {
  color:white;
  background-color:rgb(51,51,102); 
}

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

select[size="1"] option[-moz-option-selected] {
  color:white;
  background-color:rgb(51,51,102); 
}

select[size="1"] option[disabled][-moz-option-selected] {
  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);
}

/* 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 {
  box-sizing: border-box;
  font-family:-moz-fixed;
  vertical-align: bottom;
  border: 2px inset #c0c0c0;
  background-color:white;
  color:black;
  padding:   0px;
  margin-top:    1px;
  margin-bottom: 1px;
  margin-left:   0px;
  margin-right:  0px;
  behavior: url("resource:/chrome/platformHTMLBindings.xml#textAreas");
}

textarea[disabled] {
  color: gray;
}


/* misc */

applet {
  display: inline;
}
area {
  display: none;
}
map {
  display: none;
}
base {
  display: none;
}
basefont {
  display: none;
}
head {
  display: none;
}
meta {
  display: none;
}
object {
  display: inline;
}
script {
  display: none;
}
style {
  display: none;
}
title {
  display: none;
}
noembed {
  display: none;
}
noscript {
  display: none;
}
noframes {
  display: none;
}

param {
  display: none;
}

parsererror {  /* XXX should not be in HTML namespace */
  display: block;
  font-family: sans-serif;
  font-weight: bold;
  white-space: pre;
  margin: 1em;
  padding: 1em;
  border-width: thin;
  border-style: inset;
  border-color: red;
  font-size: 14pt;
  background-color: lightyellow;
}

sourcetext { /* XXX should not be in HTML namespace */
  display: block;
  white-space: pre;
  font-family: Courier;
  margin-top: 2em;
  margin-bottom: 1em;
  color: red;
  font-weight: bold;
  font-size: 12pt;
}

/* pseudo-element style */

:scrollbar-look {
  background-color: #c0c0c0;
  /* border-color: inherit; */
  /* border: 2px outset #c0c0c0; */
}

:scrollbar-arrow-look {
  background-color: #c0c0c0;
  border-color: inherit;
  border: 2px outset #c0c0c0;
}

:scrollbar-thumb-look {
  background-color: #c0c0c0;
  border-color: inherit;
  border: 2px outset #c0c0c0;
}

:-moz-select-scrolled-content {
  background: inherit;
  display: inherit;
  padding: inherit;
}

:scrolled-content {
  background: inherit;
  padding: inherit;
  display: inherit;
}

:wrapped-frame {
  display: inherit;
}

:placeholder-frame {
  display: inline;
  width: 0;
  height: 0;
}

:viewport, :viewport-scroll {
  display: block;
  background-color: inherit;
}

/* XXX Temporary until @page is supported... */
:-moz-page, :-moz-page-sequence {
  background: none;
  display: block;
}

:canvas {
  display: block;
  background-color: inherit;
}

:table {
  display: table;
  border-style: inherit;
  border-color: inherit;
  margin-top: inherit;
  margin-bottom: inherit;
  background: inherit;
  box-sizing: border-box;
}

:table-cell {
	display: table-cell;
}

:table-column {
	display: table-column;
}

:table-column-group {
	display: table-column-group;
}

:table-outer {
  display: table;
}

:table-row {
	display: table-row;
}

:table-row-group {
	display: table-row-group;
}

:cell-content {
  display: block;
}

:fieldset-content {
  display: block;
}

:button-content {
  display: block;
  text-align: center;
}

:label-content {
  display: block;
}

:-moz-comment {
  display: none;
}

:-moz-pi {
  display: none;
}

/* combobox dropdown list */
:-moz-dropdown-list {
  background-color:inherit;
  border: 2px inset rgb(153, 153, 153);
} 

/* combobox dropdown list hidden */
select:-moz-dropdown-list {
  visibility:collapse;
}

/* combobox dropdown list visible */
select[-moz-dropdown-active]:-moz-dropdown-list {
  visibility: visible;
  z-index: 2147483647;
}

:-moz-anonymous-block {
  display: block;
/*  border: 2px dashed green; */
}

:-moz-line-frame {
  
}

:-moz-letter-frame {
}

:-moz-singleline-textcontrol-frame {
  overflow:hidden;
	white-space:nowrap;
	background-color: inherit;
	text-align: inherit;
}



/* The following namespace if for use with viewsource */

viewsource|key   {font-weight:bold;} 
viewsource|key:before {color: black;} 

viewsource|val  {color: blue; font-weight:normal;} 
viewsource|val:before {content: "="; color: black;} 

viewsource|entity  {color:#FF4500; font-weight:normal;} 
viewsource|entity:before {content: "&"; color:#FF4500;} 

viewsource|comment {color: green; font-style:italic; } 
viewsource|cdata   {color: #CC0066;} 

viewsource|doctype {color:steelblue; font-style:italic;} 

viewsource|pi  {color:orchid; font-style:italic;} 

viewsource|start {color: purple;  font-weight:bold;} 
viewsource|start:before {content: "<"; color: black;} 
viewsource|start:after {content: ">"; color: black;} 

viewsource|end {color: purple;  font-weight:bold;} 
viewsource|end:before {content: "</"; color: black;} 
viewsource|end:after {content: ">"; color: black;} 

viewsource|viewsource { font-family: monospace; font-weight:normal; color:black; white-space:pre; font-size:10pt; padding-top:8px; margin-left:8px;} 

viewsource|txt {font-weight: normal; }
