/*
Dragon Go Server
Copyright (C) 2001-  Erik Ouchterlony, Rod Ival, Jens-Uwe Gaspar

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/

/* ************************* */
/* global styles */
/* ************************* */

/* ------------------------- */
/* same initial states for any browsers */
/* ------------------------- */

img {
   border: 0 solid black;
/* vertical-align: middle;
   No vertical-align here, else Avant browser will badly display the table.goban img:
   enlarging the text display will increase the height of the table cells too. */
   margin: 0;
}

table { /* skeleton tables */
   table-layout: auto;
   border: 0 solid blue;
   border-spacing: 0;
   border-collapse: collapse;
   margin: 0 auto;
   width: auto;
   max-width: none;
   overflow: visible;
   empty-cells: show;
   text-indent: 0;
}

td {
   border: 0 solid red;
   margin: 0;
   padding: 2px 4px;
   width: auto;
   text-align: left;
   vertical-align: middle;
}

hr {
   display: block;
   width: 100%;
   height: 1px;
   margin: 7px 0;
   padding: 0;
   color: #808081; /* */
   background: #808080;
   border-width: 0;
}

pre {
   display: block;
   width: 100%;
   border-width: 0;
   margin: 0.5em;
   padding: 0.5em;
   text-align: left;
}

select, input {
   vertical-align: middle;
   margin-right: 4px;
}

ul {
   margin-top: 1em;
}

a,
a * {
   text-decoration: underline;
   color: black;
}

a:link {
   color: black;
}

a:visited {
   color: black;
}

a:hover {
   color: black;
}

a:focus {
   color: black;
}

a:active {
   color: black;
}


/* ------------------------- */
/* global properties */
/* ------------------------- */

a[target]
{
   color: black;
}

.TextBrowsers {
   display: none;
}

.NotPrintable {
   display: none;
}

.black {
   color: black;
}

.white {
   color: white;
}

.gray {
   color: gray;
}

.blue {
   color: blue;
}

.green {
   color: green;
}

.red {
   color: red;
}

.bold {
   font-weight: bold;
}

.none {
   text-decoration: none;
   font-weight: normal;
}

.center {
   text-align: center;
}

.left {
   text-align: left;
}

.right {
   text-align: right;
}

.nowrap
{
   white-space: nowrap;
}


.InlineWarning {
   color: red;
}

.Ref,
.Send,
.User,
.Game,
.Rating {
   color: black;
}

h3.Header .Ref,
h3.Header .Send,
h3.Header .User,
h3.Header .Game,
h3.Header .Rating,
h3.Header {
   color: #808080;
   font-weight: bold;
}
h3.Header {
   text-align: center;
   padding: 2px;
   margin: 1em 0;
}

span.NativeText {
   border: 1px solid black;
   border-style: dashed;
}

span.BoxLabel3,
span.BoxLabel2,
span.BoxLabel1,
span.BoxLabel0 {
   padding-right: 6px;
   vertical-align: middle;
   text-align: left;
}

div.Section { /* page section */
   margin: 0 auto;
   width: auto;
   max-width: none;
   overflow: visible;
   vertical-align: top;
   padding: 4px;
   text-align: center;
}

table.Container { /* centered_container */
   table-layout: auto;
   border: 0 solid red;
   border-spacing: 0;
   border-collapse: collapse;
   empty-cells: show;
   margin: 0 auto;
   width: auto;
   max-width: none;
   overflow: visible;
   vertical-align: top;
}

hr.Section {
   display: none;
   margin: 1em 0 0 0;
}

.InlineHeader {
   color: #808080;
   font-weight: bold;
}

p.SysMsg {
   color: black;
   font-weight: bold;
}

.ErrMsg {
   color: black;
   text-decoration: none;
   font-style: normal;
   font-weight: normal;
}

.DebugInfoBox {
   width: auto;
   height: auto;
   border: 2px solid #000000;
   background: #dddddd;
   overflow: visible;
   margin: 0;
   float: left;
   top: 0;
   left: 0;
   position: absolute;
}

.DebugInfoBoxSmall {
   width: 10px;
   height: 10px;
   border: 2px solid #000000;
   background: #dddddd;
   overflow: hidden;
   margin: 0;
}

.DebugInfo {
   border: 0 solid #000000;
   background: #dddddd;
   margin: 0;
   padding: 0;
}

img.InTextImage {
   border: 0 solid black;
   vertical-align: middle;
}

img.InTextStone {
   width: 17px;
   height: 17px;
   border: 0 solid black;
   vertical-align: middle;
}

img.MinWidth {
   border: 0 solid black;
   visibility: hidden;
   display: block;
   height: 0;
}


.NoPrint {
   display: none;
}


/* ************************* */
/* main page skeleton */
/* ************************* */


body {
   background: white;
   color: black;
   margin: 0;
   padding: 8px;
}


/* banners */

table#pageHead {
   display: none;
}

table#pageFoot {
   table-layout: auto;
   background: white;
   color: black;
   border: 0 solid red;
   border-spacing: 0;
   border-collapse: collapse;
   margin: 0;
   width: 100%;
   max-width: none;
   overflow: visible;
   empty-cells: show;
   font-weight: bold;
   text-align: center;
}

table#pageFoot th,
table#pageFoot td,
table#pageHead th,
table#pageHead td {
   border: 0 solid red;
   padding: 4px;
}

table#pageFoot a,
table#pageHead a {
   color: black;
   font-weight: bold;
}

table#pageFoot .ServerHome,
table#pageHead .ServerHome {
   text-align: left;
}

table#pageFoot .LoginBox,
table#pageHead .LoginBox {
   display: none;
}

table#pageFoot .PageTime {
   text-align: center;
   font-weight: normal;
   font-size: 90%;
}

table#pageFoot .PageLapse {
   display: none;
   font-weight: normal;
   font-size: 80%;
}

table.HostedBy {
   float: right;
   table-layout: auto;
   border: 0 solid red;
   border-spacing: 0;
   border-collapse: collapse;
   margin: 0;
   width: 100%;
   max-width: none;
   overflow: visible;
   empty-cells: show;
   vertical-align: top;
   color: black;
}

td#hostedBy {
   border: 0 solid red;
   padding: 4px;
   text-align: right;
   font-size: 90%;
}


table#pageLayout {
   width: 100%;
}


/*
 Reminder of the different page/menu layouts

 Vertical menu tree:
 body [
   ...
   table#pageLayout tr.LayoutVertical td.Menu [
      (table#pageMenu or table.MenuVertical)
      table#pageTools
   }
   table#pageLayout tr.LayoutVertical td#pageBody ...
   ...
 ]

 Horizontal menu tree:
 body [
   ...
   (table#pageMenu or table.MenuHorizontal)
   table#pageTools
   table#pageLayout tr.LayoutHorizontal td#pageBody ...
   ...
 }

 Memo: "Not logged" or "Is down" tree (like horizontal with no menu):
 body [
   ...
   table#pageLayout tr.LayoutHorizontal td#pageBody ...
   ...
 }
 */

table#pageMenu {
   display: none;
   background: white;
   color: black;
   border: 0 solid red;
   border-spacing: 0;
   border-collapse: collapse;
   margin: 0;
   max-width: none;
   overflow: visible;
   empty-cells: show;
   text-align: left;
}

table.MenuHorizontal {
   display: none;
   border-width: 0;
   width: 100%;
   margin: 0;
}

table.MenuVertical {
   display: none;
   width: auto;
}

table#pageLayout tr.LayoutVertical td.Menu {
   display: none;
   width: 10%;
   text-align: left;
   vertical-align: top;
   padding: 4px 4px 4px 2px;
}

table#pageMenu th,
table#pageMenu td {
   border: 0 solid red;
   white-space: nowrap;
   padding: 4px 4px;
}

table.MenuHorizontal th,
table.MenuHorizontal td {
   width: 17%; /* for 4 columns */
   white-space: nowrap;
   padding: 4px 4px;
}

table.MenuHorizontal td.Logo1 {
   width: 20%;
}

table.MenuHorizontal td.Logo2 {
   width: 12%;
   text-align: right;
}

table.MenuVertical th,
table.MenuVertical td {
   white-space: nowrap;
   padding: 0 4px;
}

table.MenuVertical td.Logo2,
table.MenuVertical td.Logo1 {
   text-align: center;
}

table.MenuVertical td.Logo2 img {
   display: none;
}


table.MenuHorizontal dl {
   margin:  0.3em 0 0.3em 0;
   padding: 0;
}
table.MenuHorizontal dt {
   white-space: nowrap;
   padding: 0.1em 0;
   height: 30%;
}

table.MenuVertical dl {
   margin:  0.3em 0 0.3em 0;
   padding: 0;
}
table.MenuVertical dt {
   white-space: nowrap;
   padding: 0.1em 0;
   height: 30%;
}

table#pageMenu a {
   color: black;
}

table#pageMenu a.strong {
   color: black;
   font-weight: bold;
   font-size: 110%;
}


/* page tools */

table#pageTools {
   display: none;
   margin: 0;
}

table#pageTools td {
   padding: 4px 6px 4px 4px;
}

/* page body */

table#pageLayout td#pageBody {
   margin: 0;
   padding: 4px 4px 1em 4px;
   text-align: center;
   vertical-align: top;
}

table#pageLayout tr.LayoutVertical td#pageBody {
   width: 100%;
}

table#pageLayout tr.LayoutHorizontal td#pageBody {
   width: 100%;
}

/* links of bottom menu */
table.Links {
   display: none;
   table-layout: auto;
   border: 0 solid red;
   border-spacing: 0;
   border-collapse: collapse;
   margin: 4px auto;
   width: auto;
   max-width: none;
   overflow: visible;
   empty-cells: hide;
   text-align: center;
}

table.Links td {
   color: black;
   border: 0 solid red;
   padding: 8px 32px;
   text-align: center;
   vertical-align: top;
   font-weight: bold;
}

table.Links a {
   color: black;
   font-weight: bold;
}



/* ************************* */
/* general objects specifications */
/* ************************* */


/* ------------------------- */
/* usual list-tables */
/* ------------------------- */

table.Table {
   table-layout: auto;
   border: 1px solid gray;
   border-spacing: 0;
   border-collapse: collapse;
   margin: 0 auto 4px auto;
   width: auto;
   max-width: none;
   overflow: visible;
   empty-cells: show;
   position: relative;
}

table.Table th,
table.Table td {
   border-width: 0 0 1px 0;
   border-style: solid;
   border-color: gray;
   margin: 0;
   padding: 2px 4px;
}

table.Table th a,
table.Table th {
   color: black;
   font-weight: bold;
   text-align: center;
}

table.Table td a,
table.Table td {
   white-space: nowrap;
   color: black;
   text-align: left;
}

/* row of the column headers */

table.Table tr.Head a,
table.Table tr.Head {
   background: gray;
   text-decoration: none;
}

table.Table tr.Head th div,
table.Table tr.Head th {
   white-space: nowrap;
   text-align: center;
   text-indent: 0;
   vertical-align: bottom;
}

table.Table tr.Head th div {
   display: block;
}

table.Table tr.Head th span.Header {
   white-space: pre; /* normal, nowrap - pre: allow &#10; */
   color: black;
   font-weight: bold;
   text-align: center;
   padding: 0;
   margin: 0;
}

/*
 row of the column filters may be at the bottom of the table
*/
table.Table tr.Error,
table.Table tr.Filter {
   display: none;
   background: #dddddd;
}

table.Table tr.Filter td div,
table.Table tr.Filter td {
   white-space: nowrap;
   text-align: left;
   text-indent: 0;
   vertical-align: middle;
}

table.Table tr.Filter select,
table.Table tr.Filter input {
   vertical-align: middle;
   white-space: nowrap;
   margin-right: 0;
}

table.Table tr.Filter td.Error {
   background: #dd0080; /* #ff0066 #ddb0b0=#ffcccc*86% #dd4080 */
}

table.Table td.ErrMsg em {
   color: darkred;
   text-decoration: none;
   font-style: normal;
   font-weight: normal;
}

table.Table tr.Filter td.ShowFilter { /* hidden filter cell */
   color: blue;
   text-align: center;
}

table.Table tr.LinksT td,
table.Table tr.LinksB td {
   color: black;
   margin: 0;
   padding: 2px 8px;
   text-align: left;
}

table.Table tr.LinksT td.PagingR,
table.Table tr.LinksB td.PagingR {
   text-align: right;
}


/*
 rows of datas
*/
table.Table tr.Row3,
table.Table tr.Row1 {
   background: white;
}
table.Table tr.Row4,
table.Table tr.Row2 {
   background: white;
}
table.Table tr.Highlight,
table.Table tr.HilRow3,
table.Table tr.HilRow1 {
   background: #dddddd;
}
table.Table tr.HilRow4,
table.Table tr.HilRow2 {
   background: #dddddd;
}
table.Table tr.Row3 td.Warning,
table.Table tr.Row1 td.Warning {
   color: black;
   background: #dddddd;
}
table.Table tr.Row4 td.Warning,
table.Table tr.Row2 td.Warning {
   color: black;
   background: #dddddd;
}


/*
 special cells of various list-tables
*/

table.Table td.Mark {
   text-align: center;
}

/* TODO: remove those three: */
table.Table td.Right {
   text-align: right;
}
table.Table td.Center {
   text-align: center;
}

table.Table th.Button {
   margin: 0;
   padding: 2px 4px;
   text-align: center;
}

table.Table td.Button {
   background: white;
   background-repeat: no-repeat;
   background-position: center center; /* V H: top left */
   margin: 0;
   padding: 3px 4px 2px 4px;
   text-align: center;
   white-space: nowrap;
}

table.Table a.Button {
   display: block;
   margin: 0;
   padding: 0;
   text-decoration: none;
   font-weight: bold;
   text-align: center;
   white-space: nowrap;
}


/*
 cells tools
*/
table.Table span.Tool {
   padding: 0 0 0 2px;
   margin: 0;
   font-size: 0.5em;
   line-height: 0.5em;
   color: red;
   text-align: left;
   white-space: nowrap;
   vertical-align: bottom; /* super */
}

table.Table span.Tool a,
table.Table span.Tool span {
   padding: 0;
   margin: 0; /* */
   font-size: 0.5em;
   line-height: 0.5em;
   text-align: left;
   white-space: nowrap;
   vertical-align: bottom; /* super */
}

table.Table tr.Filter td span.Tool img.Hide, /* filters row */
table.Table tr.Head th span.Tool img.Sort, /* headers row */
table.Table tr.Head th span.Tool img.Hide { /* headers row */
   width: 9px;
   height: 9px;
   vertical-align: bottom;
}

table.Table tr.Filter td span.Tool img.Hide, /* filters row */
table.Table tr.Head th span.Tool img.Hide { /* headers row */
   display: none;
   border: 0 solid black;
   margin: 0 0 10px 0;
}

table.Table tr.Head th span.Tool img.Sort { /* headers row */
   border: 0 solid green;
   margin: 10px 0 0 -9px;
}


/* ------------------------- */
/* embossed tables */
/* ------------------------- */

table.MessageBox,
table.InfoBox,
table.Infos {
   table-layout: auto;
   border-spacing: 2px;
   border-collapse: separate;
   border: 2px solid #808080;
}

table.MessageBox th,
table.MessageBox td,
table.InfoBox th,
table.InfoBox td,
table.Infos th,
table.Infos td {
   border: 1px solid #808080;
}


/* ------------------------- */
/* infos tables */
/* ------------------------- */

/* see also: embossed tables */
table.Infos {
   margin: 0 auto;
   width: auto;
   max-width: none;
   overflow: visible;
   empty-cells: hide;
   text-align: left;
}

table.Infos th,
table.Infos td {
   margin: 0;
   padding: 4px;
}

table.Infos th {
   color: #800000;
   text-align: center;
   font-weight: bold;
   font-size: larger;
}

table.Infos td {
   color: black;
   text-align: left;
}

table.Infos col.ColRubric,
table.Infos td.Rubric a,
table.Infos td.Rubric {
   color: black;
   font-weight: bold;
   white-space: nowrap;
}

table.Infos .Warning {
   background: #dddddd;
}

table.Infos td.RubricWarning a,
table.Infos td.RubricWarning {
   background: #dddddd;
   color: black;
   font-weight: bold;
   white-space: nowrap;
}

table.Infos .RubricOnVacation a,
table.Infos .RubricOnVacation,
table.Infos .OnVacation a,
table.Infos .OnVacation {
   color: red;
   font-weight: bold;
   white-space: nowrap;
}

table.Infos .Highlight {
   background: #ffd070;
}


/* ------------------------- */
/* search and filter highlights */
/* ------------------------- */

span.MarkTerm {
   background: #dddddd;
}

a span.MarkTerm {
   text-decoration: underline;
}

span.MarkTagTerm {
   background: #dddddd;
   font-size: 0.5em;
   margin: 0 0 0.5em 0;
   vertical-align: super;
}


/* ------------------------- */
/* quick-info boxes */
/* ------------------------- */

/* see also: embossed tables */
table.InfoBox {
   margin: 0 auto;
   width: 100%;
   max-width: none;
   overflow: visible;
   empty-cells: hide;
   text-align: left;
}

table.InfoBox td {
   margin: 0;
   padding: 0 8px 0 4px;
   text-align: left;
   vertical-align: bottom;
}


/* ------------------------- */
/* form and area tables */
/* ------------------------- */

td.FormClassV,
td.FormClassH,
td.FormClassC,
table.FormClass,
table.FormClassV,
table.FormClassH,
table.FormClassC {
   border: 0 solid red;
}

table.FormClass,
table.FormClassV,
table.FormClassH,
table.FormClassC {
   margin: 0 auto 0 auto;
}

table.FormClass td.FormDescription {
   text-align: right;
}
table.FormClass td.FormHeader,
table.FormClass td.FormSubmitbutton {
   text-align: center;
}
table.FormClass td.FormFiltererror,
table.FormClass td.FormFilter,
table.FormClass td.FormChapter,
table.FormClass td.FormRadiobuttons,
table.FormClass td.FormCheckbox,
table.FormClass td.FormTextarea,
table.FormClass td.FormSelectbox,
table.FormClass td.FormPassword,
table.FormClass td.FormTextinput,
table.FormClass td.FormText {
   text-align: left;
}

td.FormClassV,
td.FormClassH {
   color: black;
   padding: 0;
   vertical-align: top;
   text-align: center;
}

td.FormClassC {
   color: black;
   padding: 0 20px;
   vertical-align: top;
   text-align: center;
}

td.FormClassC span.Rubric {
   font-weight: bold;
}



/* ------------------------- */
/* messages and folders features */
/* ------------------------- */

table.MessageInfos {
   table-layout: auto;
   border: 0 solid red;
   border-spacing: 0;
   border-collapse: collapse;
   margin: 0 auto;
   width: auto; /* 100% */
   max-width: none;
   overflow: visible;
   empty-cells: show;
}

table.MessageInfos td {
   color: black;
   text-align: left;
   padding: 2px;
}

table.MessageInfos td.Rubric {
   color: black;
   font-weight: bold;
}

table.MessageInfos tr.Message td.Rubric {
   vertical-align: top;
}

/* see also: embossed tables */
table.MessageBox {
   margin: 0 auto;
   width: 30em; /* 475px; */
   max-width: none;
   overflow: visible;
   empty-cells: hide;
   text-align: center;
}

table.MessageBox td {
   margin: 0;
   padding: 4px;
   text-align: left;
}

div.MessageFlow {
   margin: 0 auto;
   vertical-align: top;
   text-align: center;
}

table.FoldersTabs {
   table-layout: auto;
   border: 0 solid red;
   border-spacing: 2px;
   border-collapse: separate;
   margin: 0 auto;
   width: auto;
   max-width: none;
   overflow: visible;
   empty-cells: hide;
}

table.FoldersTabs td { /* including title cell */
   border: 4px solid white;
   padding: 2px 6px;
   text-align: center;
}

table.FoldersTabs td.Tab a font {
   text-decoration: underline;
}

table.FoldersTabs td.Selected {
   border: 4px solid #808080;
}

table.FoldersTabs td.Rubric {
   color: black;
   font-weight: bold;
   text-align: right;
   padding: 2px 6px 2px 2px;
}

form#msgSearchForm td.Description {
   margin: 0;
   padding: 4px;
   width: auto;
   text-align: left;
   vertical-align: top;
}

form#msgSearchForm tr.SelectFolders td {
   padding: 2px 0;
}

form#msgSearchForm tr.SelectFolders td.Description {
   padding: 6px 4px;
}

form#msgSearchForm tr.SelectFolders table.CheckboxArray {
   table-layout: auto;
   border: 0 solid blue;
   border-spacing: 0; /* not recognized by IE */
   border-collapse: collapse;
   margin: 0 auto 0 0;
   width: auto;
   max-width: none;
   overflow: visible;
   empty-cells: show;
   text-indent: 0;
}

form#msgSearchForm tr.SelectFolders table.CheckboxArray td {
   padding: 4px;
   text-align: left;
   vertical-align: middle;
}



/* ************************* */
/* page level and local specifications */
/* ************************* */


/* ------------------------- */
/* status page */
/* ------------------------- */

body.Status table#pageLayout td#pageBody hr.Section {
   display: block;
}


/* ------------------------- */
/* contacts pages */
/* ------------------------- */

form#contactForm table.Table tr.Row4 td,
form#contactForm table.Table tr.Row3 td,
form#contactForm table.Table tr.Row2 td,
form#contactForm table.Table tr.Row1 td {
   vertical-align: top;
}

form#contactForm table.Table a.ButIcon {
   margin: 0 2px;
   padding: 0;
}

form#contactForm table.Table a.ButIcon img {
   margin: 0;
   width: 16px;
   height: 16px;
}

form#contactForm table.FormClassV {
   border: 0 solid green;
   margin: 0 auto 0 0;
}
form#contactForm table.FormClassH {
   border: 0 solid blue;
   margin: 0 auto 0 0;
}
form#contactForm table.FormClassC {
   border: 0 solid orange;
   margin: 0 auto 0 0;
}

form#contactForm td.FormClassC {
   border: 0 solid red;
   color: black;
   padding: 0 30px;
   vertical-align: top;
   text-align: left;
}

form#contactForm table.EditOptions td,
form#contactForm table.FilterOptions td {
   text-align: left;
}

form#contactForm table.EditOptions {
   margin-top: 1em;
   margin-bottom: 1em;
}


/* ------------------------- */
/* opponents pages */
/* ------------------------- */

table#gameFilter {
   margin-bottom: 1em;
}


table#gameStats th.Rubric {
   text-align: right;
}

table#gameFilter td.Description {
   text-align: left;
}


/* ------------------------- */
/* docs pages */
/* ------------------------- */

dl.DocLink {
   margin: 0 auto;
   border: 0 solid lime;
}

dl.DocLink dd {
   text-align: left;
   margin: 0 auto 1em auto;
}

dl.DocLink span {
   color: gray;
}

dl.DocLink a *,
dl.DocLink a span,
dl.DocLink a {
   color: blue;
}

body.Links table#pageLayout td#pageBody div.Section {
   width: 85%;
}

body.Links table#pageLayout td#pageBody .Section h3.Header {
   text-align: left;
}

body.People table#pageLayout td#pageBody div.Section {
   width: 90%;
}

body.People table.People {
   width: 100%;
   border-bottom: 1px solid gray;
   margin: 0 0 1em 0;
}

body.People table.People tr.First {
   border-top: 1px solid gray;
}

body.People table.People td {
   vertical-align: top;
   text-align: left;
}

body.People table.People td.Rubric {
   text-decoration: none;
   font-weight: normal;
   color: black;
   width: 40%;
}

body.People table.People td.People {
   font-weight: bold;
   color: black;
}

body.People table.People td.People a {
   text-decoration: underline;
   color: black;
}

body.People table.People span {
   color: gray;
}

body.SiteMap table#pageLayout td#pageBody div.Section {
   width: 85%;
   text-align: left;
}

body.SiteMap table.SiteMap {
   border: 0 solid red;
   margin: 0 auto 1em 0;
}

body.SiteMap table.SiteMap td {
   border: 0 solid red;
   text-align: left;
   padding: 0 4px;
   color: black;
}

body.SiteMap table.SiteMap td a {
   text-decoration: underline;
   color: black;
}

body.SiteMap table.SiteMap td.Indent {
   width: 50px; /* img width time 2 */
   text-align: right;
   padding: 0;
}

body.SiteMap table.SiteMap td.Indent img {
   margin: 0;
   width: 25px;
   height: 25px;
}

body.Intro table#pageLayout td#pageBody div.Section {
   width: 85%;
   text-align: left;
}

body.News table#pageLayout td#pageBody span.ReleaseTitle {
   text-align: left;
   font-size: larger;
   font-weight: bold;
   color: black;
}


/* ------------------------- */
/* translations page */
/* ------------------------- */

form#translateForm table.FormClass tr.LinksT td,
form#translateForm table.FormClass tr.LinksB td {
   background: #dddddd;
   color: black;
   margin: 0;
   vertical-align: top;
}

form#translateForm table.FormClass td.PageLinksR {
   border: 0 solid lime;
   padding: 4px 8px 4px 8px;
   text-align: right;
   white-space: nowrap;
}

form#translateForm table.FormClass td.PageLinksL {
   border: 0 solid lime;
   padding: 4px 8px 4px 8px;
   text-align: left;
   white-space: nowrap;
}

form#translateForm table.FormClass td.PageLinks a {
   color: black;
}

form#translateForm table.FormClass td {
   text-align: center;
}

form#translateForm table.FormClass td.English {
   width: 30%;
   text-align: left;
   vertical-align: top;
}

form#translateForm table.FormClass td.Language {
   width: 30%;
   text-align: left;
   vertical-align: top;
}

form#translateForm table.FormClass td.Sample {
   text-align: left;
   vertical-align: top;
}

form#translateForm table.FormClass tr.SubmitTransl td {
   border: 0 solid lime;
   padding-left: 10em;
   text-align: left;
}

form#selectlangForm table.FormClass,
form#selectgroupForm table.FormClass {
   border: 0 solid lime;
   margin-left: 10em;
}

form#selectlangForm table.FormClass td.FormHeader h3.Header,
form#selectgroupForm table.FormClass td.FormHeader h3.Header {
   border: 0 solid red;
   text-align: left;
}


/* ------------------------- */
/* board page */
/* ------------------------- */

/*
 Some simple browsers (like Pocket PC IE or PALM ones) poorly
 manage the CSS commands related to cellspacing and cellpadding.
 Most of the time, this results in a 1 or 2 pixels added to the
 cells size and is not so disturbing. But this is really annoying
 for the board cells.
 So we have been forced to keep the:
   <table border=0 cellspacing=0 cellpadding=0>
 in our PHP code for the board table (i.e. table.Goban).
*/
table.Goban {
   border: 0 solid red;
   background-repeat: repeat;
   background-position: top left; /* 0 0 - top left */
   background: white;
   empty-cells: hide;
   border-collapse: collapse;
   border-spacing: 0;
   margin: 0 auto;
}

table.Goban tr {
   border-width: 0;
   margin: 0;
   padding: 0;
}

table.Goban td {
   border-width: 0;
   text-align: left;
   color: black;
   padding: 0;
   line-height: 0;
   white-space: nowrap;
}

table.Goban a {
/*
  Netscape6.2.3 under Win95 seems to oversize the cells when
  they contain a link (within the board of the "play" step)
*/
   border-width: 0;
   margin: 0;
   padding: 0;
   text-decoration: none;
   font-weight: normal;
   line-height: 0;
}

table.Goban a img,
table.Goban img {
/*
  No vertical-align: here, else Avant browser will badly display the table.goban img:
  enlarging the text display will increase the height of the table cells too.
   vertical-align: top !important;
*/
   border-width: 0;
   margin: 0;
   padding: 0;
}


table.Captures {
   background: white;
   border-width: 0 0 1px 0;
   border-bottom: 1px solid gray;
   border-spacing: 0;
   margin: 4px;
}

table.Captures th {
   background: white;
   color: black;
   border: 0 solid gray;
   padding: 4px;
}

table.Captures td.B {
   border: 0;
   vertical-align: top;
   padding: 4px;
   white-space: nowrap;
}

table.Captures td.W {
   border: 0;
   vertical-align: top;
   padding: 4px;
   white-space: nowrap;
}

table.Captures dl {
   padding: 0;
   margin: 0;
}

table.Captures dt {
   padding: 0;
   margin: 0;
}

table.Captures img {
   vertical-align: middle;
}


td.GameNotesRight {
   vertical-align: middle;
   text-align: left;
}

td.GameNotesBelow {
   text-align: center;
}

table.GameNotes {
   border-width: 0;
   margin: 4px;
}

table.GameNotes th {
   background: white;
   color: black;
   padding: 4px;
}

table.GameNotes td {
   background: white;
   padding: 0;
   margin: 0;
}

table.GameNotes td.Notes {
   background: white;
   padding: 0;
   margin: 0;
}

td.UnderBoard {
   text-align: center;
}

table.GameInfos {
   border: 1px solid gray;
   border-spacing: 0;
   margin: 0 auto;
   text-align: left;
   empty-cells: show;
}

table.GameInfos th,
table.GameInfos td {
   border: 0 solid #e0e8ed;
   margin: 0;
   padding: 4px;
}

table.GameInfos tr {
   background: white;
}

table.GameInfos tr#blackInfo,
table.GameInfos tr#blackTime {
   background: white;
}

table.GameInfos tr#whiteInfo,
table.GameInfos tr#whiteTime {
   background: white;
}

table.GameInfos td.Color,
table.GameInfos td.Name {
   text-align: left;
}

table.GameInfos td.Prisoners {
   text-align: right;
}

table.GameInfos td.Ratings {
   border: 0 solid red;
   text-align: center;
}

table.GameInfos tr.BoardInfos {
   border-width: 1px 0 0 0;
   border-style: solid;
   border-color: #808080;
}

div.BoardInfos {
   border: 0 solid red;
   margin: 0;
   padding: 0;
   text-align: left;
   color: black;
}

div.BoardInfos dl {
   border: 0 solid green;
   margin: 0;
   padding: 0;
   text-align: left;
}

div.BoardInfos dd {
   margin: 0 0;
   padding: 0;
   text-align: left;
}


table.AddtimeForm td {
   text-align: left;
}

table.MessageForm td {
   text-align: left;
}

table.MessageForm td.Rubric {
   text-align: right;
}

table.MessageForm tr.Submit td {
   text-align: left;
}

table.MessageForm tr.Back td {
   text-align: right;
}


/* ------------------------- */
/* game comments table (class=Table) */
/* ------------------------- */

table#commentTable td.Comment {
   white-space: normal; /* normal, nowrap - pre: allow &#10; */
   vertical-align: top;
   text-align: left;
   color: black;
}

table#commentTable td.Move {
   white-space: nowrap;
   vertical-align: top;
   text-align: right;
   color: black;
}

table#commentTable img.InTextStone {
   vertical-align: middle;
}

span.GameTagC {
   color: black;
}

span.GameTagH {
   color: black;
}


/* ------------------------- */
/* forums layout */
/* ------------------------- */

table.Forum {
   background: white;
   color: black;
   text-align: left;
   border: 1px solid gray;
   border-collapse: collapse;
   margin: 0;
   border-spacing: 0;
   empty-cells: show;
   width: 100%;
}

table.Forum table {
   background: white;
   color: black;
   text-align: left;
   border: 0 solid black;
   border-collapse: collapse;
   margin: 0;
   border-spacing: 0;
   empty-cells: show;
   width: 100%;
}

/* in status page */
table#forumPending {
   margin: 0 auto;
   width: auto;
}

/* forum lists */
table.Forum tr.Row3,
table.Forum tr.Row1 {
   background: white;
   color: black;
}
table.Forum tr.Row4,
table.Forum tr.Row2 {
   background: white;
   color: black;
}

table.Forum td {
   border: 0 solid red;
   padding: 3px 8px;
   margin: 0;
   text-align: left;
   color: black;
}

table#forumIndex tr.Row2 dl {
   margin: 0;
   padding: 0;
}


table#forumIndex td.Name {
   width: 50%;
}
table#forumIndex td.Name a {
   font-weight: bold;
}
table#forumIndex td.PostCnt,
table#forumIndex td.PostDate {
   white-space: nowrap;
}


table.Forum .Moderated {
   color: red;
}

table.Forum td.Indent {
   width: 15px;
   min-width: 15px;
   padding: 0;
   margin: 0;
   border: 0 solid blue;
}

table.Forum td.Indent2 {
   padding: 0;
   margin: 0;
   border: 0 solid red;
}

table.Forum tr.Caption td {
   background: white;
   color: black;
   text-align: left;
   padding: 4px 4px 4px 8px;
}

table.Forum tr.LinksT td,
table.Forum tr.LinksB td {
   background: white;
   color: black;
   padding: 2px 8px 2px 8px;
   text-align: center;
}

table.Forum .TreeLinks {
   background: white;
   color: black;
   border: 0 solid lime;
   margin: 0;
   text-align: left;
   float: left;
   top: 0;
}

table.Forum .PageLinks {
   background: white;
   color: black;
   border: 0 solid lime;
   margin: 0;
   text-align: right;
   float: right;
   top: 0;
}

table.Forum .TreeLinks a {
   color: black;
}

table.Forum .PageLinks a {
   color: black;
}

/*
  The headers of the posts have the class="PostHeadSubclass"
  where Subclass is one of: DRAWPOST_... in 'forum/forum_functions.php'
*/
table.Forum tr.PostHeadNormal {
   background: #cccccc;
   color: black;
}
table.Forum tr.PostHeadReply {
   background: #cccccc;
   color: black;
}
table.Forum tr.PostHeadPreview {
   background: #cccccc;
   color: black;
}
table.Forum tr.PostHeadEdit {
   background: #cccccc;
   color: black;
}
table.Forum tr.PostHeadHidden {
   background: #cccccc;
   color: black;
}
table.Forum tr.PostHeadSearchResult {
   background: #cccccc;
   color: black;
}

table.Forum tr.PostHeadSearchResult .PostSubject,
table.Forum tr.PostHeadEdit .PostSubject,
table.Forum tr.PostHeadPreview .PostSubject,
table.Forum tr.PostHeadReply .PostSubject,
table.Forum tr.PostHeadHidden .PostSubject,
table.Forum tr.PostHeadNormal .PostSubject {
   background: white;
   color: black;
   font-size: larger;
   font-weight: bold;
}

table.Forum tr.PostHeadSearchResult td.PostStatus,
table.Forum tr.PostHeadEdit td.PostStatus,
table.Forum tr.PostHeadPreview td.PostStatus,
table.Forum tr.PostHeadReply td.PostStatus,
table.Forum tr.PostHeadHidden td.PostStatus,
table.Forum tr.PostHeadNormal td.PostStatus {
   color: black;
   font-weight: bold;
   text-align: right;
}

table.Forum tr.PostBody {
   background: #ffffff;
   color: black;
}

table.Forum tr.PostButtons {
   background: #ffffff;
   color: black;
}

table.Forum tr.PostButtons a.Highlight {
   color: #dddddd;
}

table.Forum form.FormClass table.FormClass {
   width: auto;
   margin: 0 auto 0 0;
}

table.Forum span.OlderNewFlag,
table.Forum span.NewFlag {
   margin: 0 6px;
}

table.Forum span.OlderNewFlag a,
table.Forum span.NewFlag a {
   font-size: 80%;
   text-decoration: none;
}

table.Forum span.NewFlag a {
   color: black;
}

table.Forum span.OlderNewFlag a {
   color: gray;
}

form#tableFSFForm td.Description {
   text-align: left;
}


/* ------------------------- */
/* FAQ pages */
/* ------------------------- */

table.FAQ {
   color: black;
   text-align: left;
   border: 0 solid red;
   border-collapse: collapse;
   max-width: none;
   overflow: visible;
   width: 88%;
   margin: 0 auto;
   border-spacing: 0;
   empty-cells: show;
   text-indent: 0;
}

table.FAQ td {
   border: 0 solid red;
   padding: 2px 8px 2px 8px;
   margin: 0;
   text-align: left;
   color: black;
}

table.FAQ h3.Header {
   text-align: left;
}

table.FAQ div.FAQlevel1 {
   margin: 0 0 0 24px;
}

table.FAQ td.FAQindex div.FAQlevel1 hr {
   visibility: hidden;
}

table.FAQ td.FAQindex ul.FAQlevel2 {
   border: 0 solid red;
   margin: 0; /* remove the bullets */
}

table.FAQ td.FAQindex ul.FAQlevel2 strong.Question {
   font-weight: normal;
}

table.FAQ td.FAQread div.Answer {
   border: 0 solid red;
   padding-top: 1em;
   padding-bottom: 2em;
}


table.ForumAdmin,
table.FAQAdmin {
   border: 0 solid red;
   border-collapse: collapse;
   border-spacing: 0;
   max-width: none;
   margin: 0 auto;
   overflow: visible;
   empty-cells: show;
   text-indent: 0;
}

table.xxxFAQAdmin {
   width: 60%;
}

table.ForumAdmin td,
table.FAQAdmin td {
   border: 0 solid red;
   padding: 2px 4px;
   text-align: left;
   color: black;
}

table.ForumAdmin td.Button,
table.FAQAdmin td.Button {
   width: 16px;
   padding: 0;
   text-align: left;
   color: black;
}

table.ForumAdmin td.Button img,
table.FAQAdmin td.Button img {
   border: 0 solid black;
   width: 12px;
   height: 12px;
   margin: 2px 4px 0 0;
   vertical-align: top;
}

table.ForumAdmin td.Entry,
table.FAQAdmin td.Category,
table.FAQAdmin td.Entry {
   padding: 2px 1em 2px 4px;
}

table.xxxForumAdmin td.Entry,
table.FAQAdmin td.Indent,
table.FAQAdmin td.Category,
table.FAQAdmin td.Entry {
   border-width: 0 0 0 1px;
   border-style: solid;
   border-color: #808080;
}

/* ------------------------- */
/* edit profile page */
/* ------------------------- */

table.EditProfilButtons {
   table-layout: fixed;
   width: 535px; /* 524px auto /* 4*button_width+7*other_cells_width) */
   border: 0 solid red;
   border-spacing: 0;
   border-collapse: collapse;
   margin: 0 0;
   overflow: visible;
   empty-cells: hide;
   text-align: center;
}

table.EditProfilButtons td { /* radio button */
   color: black;
   width: 20px;
   border: 0 solid red;
   padding: 0;
   white-space: nowrap;
   text-align: center;
   vertical-align: middle;
}

table.EditProfilButtons td.button {
   background-repeat: no-repeat;
   background-position: center;
   background: white;
   width: 96px;
   height: 25px;
   font-weight: bold;
   font-size: 100%;
   text-decoration: none;
   text-align: center;
   vertical-align: middle;
}


/* ------------------------- */
/* biographical infos */
/* ------------------------- */

/*
 biographical infos:
 must left the links in the right column natural
*/

form#bioformForm td {
   vertical-align: top;
}

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

table#biomoveInfos div {
   margin: 0;
}

table#biomoveInfos img {
   width: 12px;
   height: 12px;
   border: 0 solid black;
   margin: 4px 4px 0 4px;
   vertical-align: top;
}


/* ------------------------- */
/* message allowed tags */
/* ------------------------- */

pre.code {
   background: #dddddd;
   margin: 0.3em 2px 0.3em 0.5em;
   padding: 0.3em 0 0.3em 0.5em;
   width: auto;
}

div.quote {
   border: 1px solid gray;
   margin: 0.3em 2px 0.3em 0.5em;
   padding: 0.3em 0 0.3em 0.5em;
   width: auto;
   font-style: italic;
}


/* ************************* */
/* debug overwriting tools */
/* ************************* */

/* begin form debug * /
table.FormClassC table,
table.FormClassC td,
table.FormClass {
 border-color: red;}
td.FormClassV,
table.FormClassV {
 border-color: blue;}
td.FormClassH,
table.FormClassH {
 border-color: orange;}
td.FormClassC,
table.FormClassC {
 border-color: green;}
table.FormClassC table,
table.FormClass,
table.FormClassV,
table.FormClassH,
table.FormClassC {border-style: dashed; border-width: 1px;
 border-spacing: 4px; border-collapse: separate;}
table.FormClassC td,
td.FormClassV,
td.FormClassH,
td.FormClassC {border-style: solid; border-width: 1px;
 padding: 8px; margin: 0; vertical-align: top;}
/* end form debug */


/* ************************* */
/* alternate server particularity */
/* ************************* */

/* DGS devel server */
body#dDGS table#pageFoot,
body#dDGS table#pageHead {
   background: #C9410C;
}

body#dDGS table#pageMenu {
   border-color: #C9410C;
}


/* ------------------------- */
