table { table-layout:fixed; text-align:center; border:1px solid transparent; font-family:verdana, arial, sans-serif; font-size:9px; }
table.box  { background:black; border:0px; margin:0px;}

tr.even > td { background:#dfe; }
tr.odd > td { background:#cef; }

tr.even > td { width:53px; height:61px; padding:0; }
tr.odd > td { width:53px; height:61px; padding:0; }

tr.even > td > div { position:relative; padding:0; visibility:hidden; }
tr.odd > td > div { position:relative; padding:0; visibility:hidden; }

div > div { position:absolute; width:51px; height:44px; left:2px; top:2px; padding-top:13px; font-size:18pt; }

tr.candidates > td { width:13px; height:13px; padding:0; border-style:solid; border-width:2px; border-color:transparent; }
tr.candidates > td:hover { background:#8bf; cursor:pointer; }
tr.candidates > td.excluded { visibility:hidden; }

tr.candidates > td.unique_in_box { background:#3af; }
tr.candidates > td.double_in_box { background:#6ff; }

tr.candidates > td.unique_in_col { border-left-style:solid; border-left-color:#f41; border-right-style:solid; border-right-color:#f41; }
tr.candidates > td.double_in_col { border-left-style:solid; border-left-color:#0a2; }

tr.candidates > td.unique_in_row { border-top-style:solid; border-top-color:#f41; border-bottom-style:solid; border-bottom-color:#f41; }
tr.candidates > td.double_in_row { border-top-style:solid; border-top-color:#0a2; }

td.solved table { visibility:hidden; }
td.given table { visibility:hidden; }

tr.even > td.solved > div { color:blue; cursor:pointer; visibility:inherit; }
tr.odd  > td.solved > div { color:blue; cursor:pointer; visibility:inherit; }
tr.even > td.given  > div { color:red; visibility:inherit; }
tr.odd  > td.given  > div { color:red; visibility:inherit; }
div.lockmode td.given > div { cursor:default; }

tr.even > td.double_in_cell { background:#cda; }
tr.odd  > td.double_in_cell { background:#cda; }
tr.even > td.unique_in_cell { background:#ab4; }
tr.odd  > td.unique_in_cell { background:#ab4; }
tr.even > td.error_in_cell { background:red; }
tr.odd  > td.error_in_cell { background:red; }

tr.even > td > table.error_in_box { background-color:red; }
tr.odd  > td > table.error_in_box { background-color:red; }
tr.even > td > table.error_in_col { border-left-style:solid; border-left-color:red; border-left-width: 2px; border-right-width: 0px;  }
tr.odd  > td > table.error_in_col { border-left-style:solid; border-left-color:red; border-left-width: 2px; border-right-width: 0px; }
tr.even > td > table.error_in_row { border-top-style:solid; border-top-color:red; border-top-width: 2px; border-bottom-width: 0px; }
tr.odd  > td > table.error_in_row { border-top-style:solid; border-top-color:red; border-top-width: 2px; border-bottom-width: 0px; }

td.solved div:hover { background:#8bf; }
div.lockmode td.given div:hover { background:#8bf; }

/* .unique { color:white; background:green; } */
td.caption { color:white; background:#555; font-size:16pt; }
