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

@namespace url(http://www.w3.org/TR/REC-html40); /* set default namespace to HTML */
@namespace xul url(http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul); /* namespace for XUL elements */

html {
  display: block;
}

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

frameset {
  overflow: hidden;
}

frame {
  background-color: white;
}

iframe {
  background-color: white;
}

/* blocks */

p {
  display: block;
  margin: 1em 0;
}
address {
  display: block;
  font-style: italic;
}
blockquote {
  display: block;
  margin: 1em 40px;
}
center {
  display: block;
  text-align: -moz-center;
}
div {
  display: block;
}
h1 {
  display: block;
  font-size: xx-large;
  font-weight: bold;
  margin: 1em 0;
}
h2 {
  display: block;
  font-size: x-large;
  font-weight: bold;
  margin: 1em 0;
}
h3 {
  display: block;
  font-size: large;
  font-weight: bold;
  margin: 1em 0;
}
h4 {
  display: block;
  font-size: medium;
  font-weight: bold;
  margin: 1em 0;
}
h5 {
  display: block;
  font-size: small;
  font-weight: bold;
  margin: 1em 0;
}
h6 {
  display: block;
  font-size: x-small;
  font-weight: bold;
  margin: 1em 0;
}
layer {
  display: block;
  position: absolute;
}
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-style: outset; */
  border-color: #c0c0c0;
  border-spacing: 2px; 
  margin-top: 0;
  margin-bottom: 0;
}

/* must never set padding in td, th */
td, th {
  vertical-align: inherit;
  text-align: left; 
/* border-style: inset; */
  border-color: #c0c0c0;
  display: table-cell;
}
th {
  font-weight: bold;
  text-align: center; 
}
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;
}

a:link {
  display: inline;
  color: blue;
  text-decoration: underline;
  cursor: pointer;
}
a:visited {
  display: inline;
  color: purple;
  text-decoration: underline;
  cursor: pointer;
}
a:active {
  display: inline;
  color: lime;
  text-decoration: underline;
  cursor: pointer;
}
a:out-of-date {
  display: inline;
  color: red;
  text-decoration: underline;
  cursor: pointer;
}
a:link img {
  display: inline;
  border: 2px solid;
  text-decoration: none;
}
a:visited img {
  display: inline;
  border: 2px solid;
  text-decoration: none;
}
a:active img {
  display: inline;
  border: 2px solid;
  text-decoration: none;
}
a:out-of-date img {
  display: inline;
  border: 2px solid;
  text-decoration: none;
}
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 {
  display: inline;
  vertical-align: sub;
  font-size: smaller;
}
sup {
  display: inline;
  vertical-align: super;
  font-size: smaller;
}
ilayer {
  position: relative;
  display: inline;
}
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 1em 40px;
}

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

li {
  display: list-item;
  list-style-position: inside;
}

ul li, ol li, menu li, dir li {
  list-style-position: outside;
}

/* 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;
}
dd {
  display: block;
  margin-left: 40px;
}

/* leafs */

embed {
  display: inline;
}
hr {
  display: block;
  border: 1px -moz-bg-inset;
  margin: 0 auto;
}
br {
  display: inline;
  color: cyan;
}
img {
  display: inline;
}
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;
}
input {
  vertical-align: bottom;
  border: 2px inset rgb(204, 204, 204);
  background-color: white;
  color: black;
}
input[type=hidden] {
  border: none;
  visibility: hidden;
}
input[type=radio] {
  /* these margins are for NavQuirks, we need a Standard ua.css */  
  margin-left:   3px;   
  margin-right:  5px;  
  margin-top:    3px; 
  margin-bottom: 3px; 
  border: 2px outset rgb(204, 204, 204);
  background-color:rgb(204, 204, 204);
  color:black;
  width:12px;
  height:12px;
  -moz-border-radius:6px;
}

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

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

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


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

input[type=checkbox]:active {
  background-color:gray;
  border: 1px inset rgb(204, 204, 204);
}

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

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

  padding: 1px;
}

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

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

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

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

input[type="submit"][disabled] {
   border-style: solid;
}

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

  padding: 1px;
}

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

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

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

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

input[type="reset"][disabled] {
   border-style: solid;
}

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

  padding: 1px;
}

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

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

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

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

input[type="button"][disabled] {
   border-style: solid;
}

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

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

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;

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

  padding: 1px;
}

button:active {
  border-style: inset;

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

button:hover {
}

button:active:-moz-outline {
   border : 1px solid black;
}

button:hover:-moz-outline {
   border : 1px solid black;
}

button[disabled] {
   border-style: solid;
}

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

:-moz-file-button {
  border: 2px outset rgb(204, 204, 204);
  color:black;
  background-color: rgb(204, 204, 204);
}

:-moz-file-text {
  border: 2px inset rgb(204, 204, 204);
  margin-right: 10px; 
  background-color: white;
  color: black;
}

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

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

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


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

/* Combo box style */
select, select[size="1"] {
  vertical-align: bottom;
  border: 1px inset #c0c0c0;
  background-color:rgb(204, 204, 204);
  color:black;
  white-space:nowrap;
  text-align: left; 
}

/* Listbox style */
select[size] {
  background-color: white;
  border: 1px inset rgb(153, 153, 153);
}

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

option {
  display:block;
  padding-left:3px;
  padding-right:3px;
}

/* Combobox item style */
select option[-moz-option-selected] {
 color:black;
 background-color:white; 
}

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

select[size="1"] option[-moz-option-selected] {
  color:black;
  background-color:white;
}

option.selectedfocus {
  border:   1px dotted white;
  background-color: rgb(0,0,128);
  color: rgb(255,255,255);
}

optgroup {
  font-style:italic;
  font-weight:bold;
}

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

textarea {
  vertical-align: bottom;
  border: 2px inset #c0c0c0;
  background-color:white;
  color:black;
}

/* misc */

applet {
  display: inline;
}
area {
  display: none;
}
map {
  display: block;
}
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;
}

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

:wrapped-frame {
  display: inherit;
}

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

:-moz-viewport {
  display: block;
  background-color: inherit;
}

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

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

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

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

:label-content {
  display: block;
}

:-moz-comment {
  display: none;
}

:-moz-pi {
  display: none;
}

:-moz-dropdown-visible {
  visibility: visible;
}

:-moz-dropdown-hidden {
  visibility: hidden;
}

:-moz-dropdown-btn-out {
  border: 2px outset #c0c0c0;
  background-color: rgb(206, 207, 206);
}

:-moz-dropdown-btn-pressed {
/*  border: 2px inset #c0c0c0; */
  background-color: rgb(204, 204, 204);
  border: none;
}

:-moz-dropdown-list {
 position:absolute;
 background-color:rgb(204, 204, 204);
 border: 1px inset rgb(153, 153, 153);
} 


:-moz-combobox-text {
  color: black;
  padding-left: 2px;
}

:-moz-combobox-textselected {
  background-color: rgb(0,0,128);
  color: white;
  border: 1px solid rgb(0,0,128);
}

:-moz-combobox-textselectedfocus {
  background-color: rgb(0,0,128);
  color: white;
  border: 1px dotted white;
}

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

:-moz-line-frame {
}

:-moz-letter-frame {
}
