/* Self-hosted font code from
 * https://google-webfonts-helper.herokuapp.com/
 */

/* roboto-regular - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: url('/fonts/roboto-v19-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Roboto'), local('Roboto-Regular'),
       url('/fonts/roboto-v19-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/fonts/roboto-v19-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('/fonts/roboto-v19-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('/fonts/roboto-v19-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/fonts/roboto-v19-latin-regular.svg#Roboto') format('svg'); /* Legacy iOS */
}
/* roboto-700 - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: url('/fonts/roboto-v19-latin-700.eot'); /* IE9 Compat Modes */
  src: local('Roboto Bold'), local('Roboto-Bold'),
       url('/fonts/roboto-v19-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/fonts/roboto-v19-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('/fonts/roboto-v19-latin-700.woff') format('woff'), /* Modern Browsers */
       url('/fonts/roboto-v19-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/fonts/roboto-v19-latin-700.svg#Roboto') format('svg'); /* Legacy iOS */
}

/* cabin-regular - latin */
@font-face {
  font-family: 'Cabin';
  font-style: normal;
  font-weight: 400;
  src: url('/fonts/cabin-v12-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Cabin'), local('Cabin-Regular'),
       url('/fonts/cabin-v12-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/fonts/cabin-v12-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('/fonts/cabin-v12-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('/fonts/cabin-v12-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/fonts/cabin-v12-latin-regular.svg#Cabin') format('svg'); /* Legacy iOS */
}


/* Things that could apply to any page */

body {
	font-family: "Roboto", sans-serif;
}

body input {
	font-family: "Roboto", sans-serif;
}

body button {
	font-family: "Roboto", sans-serif;
}

body h1,h2,h3,h4 {
    font-family: "Cabin", sans-serif;
    font-weight: normal;
    padding-top: 0.2em;
    padding-bottom: 0.2em;
    padding-left: 0.5em;
    box-shadow: 2px 2px 4px silver;
}

body h1 {
    background-color: #ffcc66;
}

body h2 {
    background-color: #ffdd88;
}

body h3 {
    background-color: #ffeeaa;
}

body h4 {
    background-color: #ffffcc;
}


a {
	text-decoration: none;
}

.sidebar {
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0px;
	padding-left: 10px;
	padding-top: 10px;
	padding-bottom: 10px;
	width: 180px;
	background-color: #dddddd;
	overflow-y: auto;
}

.sidebarlinklist {
	padding-left: 18px;
}

div.roundlinks {
       margin-right: 10px;
}

div.roundlink {
       padding-left: 20px;
}

div.sidebarversioninfo {
    font-size: 8pt;
    color: #444444;
}

#miscstats {
    padding-left: 20px;
}

#miscstatslink {
    font-size: 10pt;
}

.mainpane {
	margin-left: 200px;
}

div.sidebarbannerheading {
       background-color: black;
       color: white;
       font-size: 10pt;
       text-align: center;
       font-weight: bold;
       margin-right: 10px;
       padding: 5px;
       border: 1px solid green;
}

div.sidebarbanner {
       background-color: #880000;
       color: white;
       font-size: 10pt;
       text-align: center;
       margin-right: 10px;
       padding: 5px;
       border: 2px solid blue;
       width: 146px;
}

.groupseparator {
	height: 4px;
	background-color: purple;
}

input.bigbutton {
    padding: 10px;
    font-size: 12pt;
}

input.destroybutton {
    background-color: #aa0000;
    color: white;
}

input.chickenoutbutton {
}

/* Front page */
div.createtourneynamebox {
    margin-top: 10px;
}

div.createtourneybuttonbox {
    margin-top: 20px;
    margin-bottom: 20px;
}


/* Fixtures and scores */

.fixturetable {
	border-collapse: collapse;
}

table.fixturetable td {
	padding-top: 3px;
	padding-bottom: 3px;
}

tr.gamerow td {
    border-bottom: 1px dashed gray;
}

tr.firstgameintable td {
	border-top: 2px solid black;
}

table.fixturetable th {
	padding-left: 0.5em;
	padding-right: 0.5em;
}

table.fixturetable td.gameplayer1 {
	background-color: #ffffcc;
    text-align: right;
}

table.scorestable td.gamescore {
    min-width: 6ex;
    text-align: center;
}

table.fixturetable td.gamescore {
	background-color: #ffffcc;
    text-align: left;
}

table.fixturetable td.gameplayer2 {
	background-color: #ffffcc;
}

table.fixturetable td.gameremarks {
	padding-left: 0.5em;
	padding-right: 0.5em;
	border-top: none;
}

table.fixturetable td.gamerepeats {
	padding-left: 0.5em;
	padding-right: 0.5em;
	border: 2px solid orange;
	background-color: #ffff88;
}

table.fixturetable td.roundno {
	font-size: 1.5em;
	font-weight: bold;
	vertical-align: middle;
	text-align: center;
}

table.scorestable td.roundno {
	font-size: 1.5em;
	vertical-align: middle;
	text-align: center;
    min-width: 2em;
    font-family: "Cabin", sans-serif;
}

table.fixturetable td.tableno {
	font-size: 1.5em;
	vertical-align: middle;
	text-align: center;
    font-family: "Cabin", sans-serif;
}

table.scorestable td.tableno {
	font-size: 1.5em;
	vertical-align: middle;
	text-align: center;
    min-width: 2em;
    font-family: "Cabin", sans-serif;
}

table.scorestable td.gamedivision {
    padding: 5px;
}

.scorestable {
	border-collapse:collapse;
}

table.scorestable th {
	padding-left: 0.5em;
	padding-right: 0.5em;
}

tr.unplayedgame td.gameplayer1 {
	background-color: #dddddd;
    text-align: right;
}

tr.unplayedgame td.gameplayer2 {
	background-color: #dddddd;
    text-align: left;
}

td.winningplayer {
	background-color: #aaffaa;
}

td.losingplayer {
	background-color: #ffaaaa;
}

td.drawingplayer {
	background-color: #ffff88;
}

.roundno {
	text-align: center;
}

.gameseq {
	text-align: center;
}

.tableno {
	text-align: center;
}

.gametype {
	text-align: center;
    color: gray;
    padding-left: 0.5em;
    padding-right: 0.5em;
}

.gameplayer1 {
	text-align: right;
	padding-left: 0.5em;
	padding-right: 0.5em;
}

.gamescore {
	text-align: center;
}

input.gamescore {
	text-align: center;
}

.gameplayer2 {
	text-align: left;
	padding-left: 0.5em;
	padding-right: 0.5em;
}


/* STATS CORNER */
table.statscorner {
	border-collapse: collapse;
}

table.statscorner tr {
}

table.statscorner th {
	border-bottom: 1px solid black;
	background-color: #dddddd;
}

tr.statsrow td {
	border-bottom: 1px dashed gray;
}

td.statsname {
	border-right: 1px solid gray;
	background-color: #ffdd66;
	text-align: left;
	vertical-align: middle;
	padding-left: 0.5em;
	padding-right: 0.5em;
}

td.statsnumvalue {
	background-color: #ffff88;
	text-align: right;
	vertical-align: middle;
	padding-left: 0.5em;
	padding-right: 0.5em;
}

/* STANDINGS */

table.standingstable {
	border-collapse: collapse;
}

tr.standingstabledivspacer {
	height: 2ex;
}

table.standingstable td {
	padding-left: 0.3em;
	padding-right: 0.3em;
}

tr.standingsrow td {
	border-bottom: 1px dashed gray;
}

table.standingstable th {
	border-bottom: 1px solid black;
	background-color: #dddddd;
	padding-left: 0.3em;
	padding-right: 0.3em;
}

td.standingspos {
	text-align: right;
	vertical-align: middle;
}

td.standingsname {
	text-align: left;
	border-right: 1px solid gray;
}

td.standingsplayed {
	text-align: right;
	border-right: 1px solid gray;
}

td.standingsfinals {
    text-align: right;
    border-right: 1px solid gray;
    font-weight: bold;
}

td.standingswins {
	text-align: right;
	border-right: 1px solid gray;
}

td.standingsdraws {
	text-align: right;
	border-right: 1px solid gray;
}

td.standingspoints {
	text-align: right;
	border-right: 1px solid gray;
}

td.standingsspread {
	text-align: right;
	border-right: 1px solid gray;
}

td.standingsfirstsecond {
	text-align: right;
	border-right: 1px solid gray;
}

td.standingstournamentrating {
	text-align: right;
	border-right: 1px solid gray;
}

table.resultstable {
	border: 1px solid #66ccff;
	border-collapse: collapse;
}

/* Exported standings and results */

td.exportleftplayer {
	text-align: right;
	padding-right: 1em;
}

td.exportrightplayer {
	text-align: left;
	padding-left: 1em;
}

td.exportscore {
	text-align: center;
}

tr.exporttablenumber {
}

tr.exportdivisionnumber {
}

tr.exportgamerow {
	background-color: #ccffff;
}

th.exporttablenumber {
	background-color: #66ccff;
	text-align: center;
	/* border-top: 1ex solid white;*/
}

th.exportroundnumber {
	background-color: #22aaff;
	text-align: center;
	font-weight: bold;
	font-size: 16pt;
}

th.exportdivisionnumber {
	background-color: #66ccff;
	text-align: center;
	font-weight: bold;
	font-size: 14pt;
}

div.exportedstandings {
	margin-left: 20px;
}

div.exportedresults {
	margin-left: 20px;
}

/* Team score display */

table.teamscorestable {
	border: 2px solid grey;
	border-collapse: collapse;
}

td.teamscorestablename {
	border: 1px solid gray;
	text-align: left;
}

td.teamscorestablescore {
	border: 1px solid gray;
	text-align: right;
	font-weight: bold;
}

span.faintoutline {
    text-shadow:
        -1px -1px 0 #aaa,
        1px -1px 0 #aaa,
        -1px 1px 0 #aaa,
        1px 1px 0 #aaa;
}


/* Warnings and exceptions */

div.warningbox {
	background-color: #ffff88;
	border: 5px solid orange;
	height: 130px;
	display: table;
    margin-top: 20px;
    margin-bottom: 20px;
}

div.warningboxwidthlimited {
    max-width: 600px;
}

div.warningboximage {
	float: left;
	height: 130px;
	width: 150px;
}

div.warningboxmessagecontainer {
	vertical-align: middle;
	display: table-cell;
	padding: 5px;
}

div.warningboxmessagecontainerwidthlimited {
	max-width: 450px;
}

div.warningboxmessage {
	font-size: 14pt;
}

div.tourneyexception {
	background-color: #ffcccc;
	border: 5px solid red;
	height: 130px;
	max-width: 600px;
	display: table;
    margin-top: 20px;
    margin-bottom: 20px;
    /*box-shadow: 5px 5px 5px gray;*/
}

div.tourneyexceptionimage {
	float: left;
	height: 130px;
	width: 150px;
}

div.tourneyexceptionmessagecontainer {
	max-width: 450px;
	vertical-align: middle;
	display: table-cell;
    padding: 10px;
}

div.tourneyexceptionmessage {
	font-size: 14pt;
}

div.infoboxcontainer {
    background-color: #ccccff;
    border: 5px solid blue;
    max-width: 750px;
    display: table;
	vertical-align: middle;
}

div.infoboximage {
	float: left;
	padding: 10px;
	width: 90px;
	vertical-align: middle;
}

div.infoboxmessage {
	font-size: 14pt;
}

div.infoboxmessagecontainer {
	max-width: 600px;
    display: table-cell;
    vertical-align: middle;
    padding-left: 10px;
    padding-right: 10px;
}

div.successinfoboxcontainer {
    background-color: #ccffcc;
    border: 5px solid green;
}


a.playerlink {
	text-decoration: none;
	color: #000044;
}

a.playerlinkwithdrawn {
    /*text-decoration: line-through;*/
    color: #777777;
}

a.thisplayerlink {
	font-weight: bold;
}


/* Fixture generation */

div.fixgenoption {
    margin-top: 10px;
    margin-bottom: 10px;
}

.fixgentable {
	border-collapse: collapse;
}

table.fixgentable {
	border: 1px solid black;
	max-width: 800px;
}

th.fixgenth {
	border-bottom: 1px solid gray;
	background-color: #cccccc;
}

td.fixgen {
	background-color: #ffee66;
	padding: 5px;
	border-bottom: 1px solid gray;
}

td.fixgenmodule {
	padding: 5px;
	border-bottom: 1px solid gray;
	background-color: #ffffaa;
	font-size: 10pt;
}

td.fixgendescription {
	font-size: 11pt;
	padding: 5px;
	border-bottom: 1px solid gray;
	background-color: #ffffaa;
}

div.fixtureacceptbox {
    margin-top: 20px;
    margin-bottom: 40px;
}

a.fixturecancellink {
    padding: 20px;
    font-size: 12pt;
}

table.fixdivselector {
    border-collapse: collapse;
    margin-bottom: 30px;
}

table.fixdivselector td {
    padding: 5px;
}

input.fixdivroundsel {
    max-width: 5em;
}


/* Divisions */

table.divtable {
	border: 1px solid black;
	border-collapse: collapse;
}

table.divtable th {
	padding-left: 5px;
	padding-right: 5px;
	border: 1px solid black;
}

td.divtable {
	padding: 3px 5px 3px 5px;
	border: 1px solid grey;
}

td.divtablerating {
	text-align: right;
}

td.divtablename {
}

td.divtabledivpos {
	text-align: right;
}

td.divtablepos {
	text-align: right;
}

td.divtablepromote {
	text-align: center;
}

td.gameheat {
	text-align: center;
}

table.divsummarytable {
	border: 1px solid black;
	border-collapse: collapse;
}

table.divsummarytable th {
	padding-left: 5px;
	padding-right: 5px;
	border: 1px solid black;
}

table.divsummarytable td {
	padding: 3px 5px 3px 5px;
	border: 1px solid gray;
}

td.divsummaryname {
}

td.divsummaryactiveplayers {
	text-align: right;
}

td.divsummarywithdrawnplayers {
	text-align: right;
}


/* Front page list of available tourneys */

table.tourneylist {
	border: 1px solid black;
	border-collapse: collapse;
}

table.tourneylist th {
	border: 1px solid black;
	padding-left: 10px;
	padding-right: 10px;
	background-color: #ffee66;
}

table.tourneylist tr {
	border-left: 1px solid black;
	border-right: 1px solid black;
}

table.tourneylist td {
	padding-left: 10px;
	padding-right: 10px;
}

table.tourneylist td.tourneylistname {
	border: 1px dashed grey;
	background-color: #ffffaa;
}

table.tourneylist td.tourneylistmtime {
	border: 1px dashed grey;
	background-color: #ffffaa;
}

table.tourneylist td.tourneylistlink {
	border: 1px dashed grey;
	background-color: #ffffaa;
}


/* Generic definitions for tables that rank things in order */

table.miscranktable {
	border-collapse: collapse;
}

table.miscranktable th {
	border-bottom: 1px solid black;
	background-color: #dddddd;
	padding-left: 0.5em;
	padding-right: 0.5em;
}

table.miscranktable td {
	border-bottom: 1px dashed gray;
	background-color: #ffdd66;
	padding-left: 0.5em;
	padding-right: 0.5em;
}

table.miscranktable tr {
	background-color: #ffdd66;
}

table.miscranktable td.tuffluckpos,td.overachieverspos,td.miscrankpos {
	text-align: right;
	vertical-align: middle;
}

table.miscranktable td.tuffluckname,td.overachieversname,td.miscrankname {
	text-align: left;
	border-right: 1px solid gray;
}

table.miscranktable td.tuffluckmargins {
	text-align: center;
	border-right: 1px solid gray;
}

table.miscranktable td.miscranklist {
    text-align: left;
	border-right: 1px solid gray;
}

table.miscranktable td.miscranknumber {
    text-align: right;
	border-right: 1px solid gray;
}

table.miscranktable td.miscranknumbersorted {
    text-align: right;
    font-weight: bold;
	border-right: 1px solid gray;
}

table.miscranktable td.tufflucktuffness,td.overachieversoverachievement {
	text-align: right;
	font-weight: bold;
}

table.miscranktable td.overachieversseed {
	text-align: right;
	border-right: 1px solid gray;
}

table.miscranktable td.overachieversstandingspos {
	text-align: right;
	border-right: 1px solid gray;
}


/* Table-to-name index */

table.tableindex {
}

td.tableindexname {
	padding-left: 0.3em;
	padding-right: 0.3em;
	background-color: #ffdd66;
	border: 1px solid gray;
}

td.tableindextable {
	padding-left: 0.3em;
	padding-right: 0.3em;
	background-color: #3333ff;
	font-weight: bold;
	color: #ffffff;
	text-align: center;
	border: 1px solid gray;
}

td.tableindexspacer {
	border: none;
	width: 2em;
}


/* Player setup */

div.playerlist {
       margin: auto;
}

div.playerlistpane {
       float: left;
}

div.playerlisthelp {
       float: left;
       width: 350px;
       margin-left: 10px;
       padding: 10px;
       background-color: #cccccc;
       font-size: 10pt;
}

#playerlistextrahelpshow {
    color: blue;
    cursor: pointer;
}

a.fakelink {
    color: blue;
    cursor: pointer;
}

div.playerlistclear {
       clear: both;
}

#playerlistsummary {
    font-size: 10pt;
}

div.playerlistsubmitdiv {
    padding-top: 10px;
    padding-bottom: 10px;
    float: left;
}

div.playerlistsummarydiv {
    padding-top: 10px;
    padding-bottom: 10px;
    float: right;
    max-width: 200px;
    color: gray;
}


/* Results editor data entry tool */

div.scoreentry {
    position: relative;
    width: 600px;
    height: 240px;
    background-color: #cccccc; /*#ffff88;*/
    margin-top: 20px;
    margin-bottom: 20px;
    border: 2px solid navy;
}

div.scoreentryheaderrow {
    width: 600px;
    float: left;
    position: relative;
    height: 30px;
}

div.scoreentryplayerinfo {
    margin-left: 5px;
    height: 30px;
    line-height: 30px;
    vertical-align: middle;
    float: left;
    font-size: 10pt;
    color: navy;
    padding-left: 10px;
}

div.scoreentryplayerinfo1 {
    position: absolute;
    left: 0px;
    max-width: 250px;
}

div.scoreentryplayerinfo2 {
    position: absolute;
    left: 300px;
    max-width: 250px;
}

div.scoreentryclear {
    left: 545px;
    position: absolute;
    height: 20px;
    line-height: 20px;
    font-size: 10pt;
    color: navy;
    background-color: white;
    padding-left: 2px;
    padding-right: 2px;
    margin: 5px;
    width: 40px;
    text-align: center;
    vertical-align: middle;
}

div.scoreentrynamerow {
    width: 600px;
    /*height: 80px;*/
    float: left;
}

div.scoreentryeditboxes {
    position: relative;
    width: 600px;
}

div.scoreentryname {
    /*width: 268px;*/
    /*height: 60px;*/
    float: left;
    padding: 10px;
    margin: 5px;
    border: 1px solid gray;
    background-color: #ffdd66;
}

#name1div {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 268px;
}

#name2div {
    position: absolute;
    top: 0px;
    left: 300px;
    width: 268px;
}

#score1div {
    position: absolute;
    top: 70px;
    left: 0px;
    width: 268px;
}

#score2div {
    position: absolute;
    top: 70px;
    left: 300px;
    width: 268px;
}

div.scoreentryspacer {
    clear: both;
}

div.scoreentryscorerow {
    width: 600px;
    /*height: 80px;*/
    /*margin: 10px;*/
    float: left;
    /*background-color: #ffaaff;*/
}

div.scoreentryscore {
    width: 268px;
    /*height: 60px;*/
    float: left;
    padding: 10px;
    margin: 5px;
    background-color: #ffdd66;
    border: 1px solid gray;
    /*background-color: cyan;*/
}

input.entryname {
    width: 255px;
    padding: 5px;
    font-size: 14pt;
}

input.entryscore {
    padding: 5px;
    font-size: 14pt;
    width: 80px;
    text-align: center;
}

#entryname1 {
    float: right;
}

#entryname2 {
    float: left;
}

#entryscore1 {
    float: right;
}

#entryscore2 {
    float: left;
}

div.scoreentryotherrow {
    position: absolute;
    width: 600px;
    top: 190px;
    /*height: 40px;*/
    float: left;
    /*background-color: #ffdd66;*/
}

div.scoreentrytiebreak {
    float: left;
    margin: 5px;
    padding: 10px;
    color: black;
    display: none;
}

div.scoreentrysubmit {
    margin: 5px;
    padding: 10px;
    float: right;
}

div.lastentry {
    width: 600px;
    padding: 10px;
    margin-top: 20px;
    margin-bottom: 20px;
    background-color: gray;
}

div.entrymainpane {
    float: left;
    margin-right: 20px;
}

div.gamelistpane {
    float: left;
    border: 2px solid navy;
}

div.gamelistpanebody {
    margin-top: 5px;
}

div.gamelistdivisionheading {
    font-size: 16pt;
    margin-top: 20px;
    margin-bottom: 10px;
    padding-left: 10px;
}

/* Videprinter on result entry page */
div.videprinter {
    width: 600px;
    margin-top: 20px;
    margin-bottom: 20px;
    background-color: black;
    border: 2px solid navy;
    color: white;
    font-size: 12pt;
}

div.videprinterwindow {
    overflow: auto;
    height: 180px;
}

div.videprinterentry {
    padding: 2px;
    margin-left: 5px;
    margin-right: 5px;
    background-color: black;
    color: white;
    cursor: pointer;
}

div.videprinternewsentry {
    margin-top: 2px;
    margin-bottom: 2px;
}

div.videprinternewsentryediting {
    background-color: #505;
}

span.videprintersuperseded {
    text-decoration: line-through;
    color: gray;
}

span.videprinterdivision {
    color: #00cccc;
}

span.videprinterroundandtable {
    color: #ffbb88;
}

span.videprinterplayer {
    color: #dddd00;
}

span.videprinterwinningplayer {
    color: #00dd00;
}

span.videprinterlosingplayer {
    color: #ff4444;
}

span.videprinterscore {
    color: white;
}

div.newsform {
    margin-top: 10px;
}
div.newsformheading {
    background-color: navy;
    color: #dddddd;
    padding: 5px;
    clear: both;
}

div.newsformheadingedit {
    background-color: purple;
    clear: both;
}

div.newsformheadingoptions {
    display: inline-block;
    float: right;
}

div.newsformheadingoptions input {
    margin-left: 10px;
}

div.newsformheadingoptions label {
    margin-right: 10px;
}

div.newsformbody {
    margin: 2px;
}

input.newsformtext {
    width: 80%;
}

input.newsformbutton {
    width: 18%;
    float: right;
}

div.newsformheadingtext {
    display: inline-block;
}

/* Blinkenlights */

div.blinkenlights {
    background-color: navy;
    display: inline-block;
}

table.blinkenlightstable {
    border: 2px solid navy;
    border-collapse: collapse;
}

tr.blinkenlightsrow {
    height: 60px;
}

td.blinkenlightscell {
    height: 60px;
    min-width: 72px;
    border: 1px solid gray;
}

td.blinkenlightspaddingcell {
    height: 60px;
    min-width: 73px;
    border: 1px solid gray;
    background-color: black;
}

div.blinkenlightsdivision {
    height: 10px;
    font-size: 10pt;
    color: silver;
    background-color: black;
}

div.blinkenlightstablenumber {
    height: 40px;
    line-height: 40px;
    font-size: 20pt;
    color: yellow;
    text-align: center;
    vertical-align: middle;
    background-color: black;
    cursor: pointer;
    font-family: "Cabin", sans-serif;
}

div.blinkenlightsgamesleft {
    height: 20px;
    font-size: 16pt;
    color: white;
    text-align: center;
    background-color: black;
}

.blinkenlightsgamesleft table {
    width: 100%;
}

.blinkenlightsgamesleft tr {
}

td.blinkenlightsgameleft {
    background-color: red;
    border: 2px solid red;
    height: 10px;
    cursor: pointer;
}

td.blinkenlightsgameplayed {
    background-color: #222222;
    height: 10px;
    border: 2px solid #222222;
    cursor: pointer;
}

label.closeselectedgame {
    background-color: white;
    cursor: pointer;
}

div.blinkenlightsfooter {
    background-color: black;
    height: 12pt;
    padding: 5px;
    max-width: 592px;
    overflow: hidden;
    white-space: nowrap;
}

div.blinkenlightsmouseovertext {
    float: right;
    color: silver;
    font-style: italic;
    font-size: 10pt;
}

/* Conflict resolution form for old results interface */
div.conflictresolution {
    margin-top: 20px;
    margin-bottom: 30px;
    padding: 5px;
    border: 5px solid orange;
    width: 590px;
}

div.conflictresolutiontoprow {
    padding: 5px;
    font-style: italic;
    background-color: #ffff88;
}

div.conflictresolutionchoicerow {
    padding: 5px;
    display: table-row;
}

div.conflictresolutionradiobutton {
    width: 20px;
    padding: 5px;
    display: table-cell;
}

div.conflictresolutionlabel {
    padding: 5px;
    display: table-cell;
}

div.conflictresolutionbottomrow {
    padding: 5px;
    height: 20px;
    vertical-align: middle;
    background-color: #ffff88;
}

div.conflictresolutionsubmit {
    float: right;
    height: 20px;
}

div.conflictresolutionexample {
    margin-top: 20px;
    margin-bottom: 20px;
    margin-left: 35px;
}

div.conflictresolutionexampletitle {
    font-style: italic;
    padding-bottom: 5px;
}

table.conflictresolutionexampletable {
    border-collapse: collapse;
}

table.conflictresolutionexampletable th {
    border-bottom: 1px solid black;
    background-color: #aaaaaa;
    padding: 5px;
}

table.conflictresolutionexampletable tr {
}

table.conflictresolutionexampletable td {
    text-align: center;
    padding: 5px;
    background-color: #dddddd;
}

td.cr_newresultcol {
    font-weight: bold;
}

div.resultsentrytitle {
    color: #dddddd;
    background-color: navy;
    padding: 5px;
}

/* Round name */
div.roundnamebox {
    display: inline-block;
    background-color: #ffcc66;
    width: 584px;
    font-size: 18pt;
    text-align: center;
    padding: 10px;
    font-family: "Cabin", sans-serif;
}

div.boxshadow {
    box-shadow: 5px 5px 8px gray;
}

/* Preferences */
div.prefsdiv {
    max-width: 600px;
}

div.prefsheading {
    background-color: navy;
    color: white;
    padding: 5px;
}

div.prefstaborder {
    padding: 5px;
    margin-bottom: 10px;
    background-color: #dddddd;
}

div.prefstaborderrow {
    position: relative;
    padding: 5px;
    vertical-align: middle;
    height: 30px;
    line-height: 30px;
    border-bottom: 1px dashed black;
}

div.prefstaborderimage {
    position: absolute;
    left: 0px;
}

div.prefstabordercontrol {
    position: absolute;
    left: 40px;
    padding-left: 10px;
}

div.prefsclear {
    clear: both;
}

div.prefssubmitrow {
    margin-top: 10px;
    margin-bottom: 10px;
    padding: 5px;
}

div.prefsfeedback {
    height: 20px;
}

span.prefssaved {
    color: #008800;
    font-size: 10pt;
}

div.prefstaborderfooter {
    font-size: 10pt;
}


/* Display setup */

div.bannercontrol {
    margin-top: 20px;
}

div.viewselection {
    position: relative;
    margin-top: 20px;
}

div.viewdetails {
    max-width: 780px;
}

div.viewdetailstext {
    padding: 10px;
    float: left;
    width: 100%;
}

div.viewdetailstitle {
    font-size: 18pt;
    font-weight: bold;
}

div.viewdetailsdescription {
}


input.switchviewbutton {
    width: 200px;
    height: 30px;
}

div.viewpreviewandoptions {
    position: relative;
}

div.teleostoptionheading {
    font-size: 14pt;
    font-weight: bold;
    margin-top: 10px;
    padding-left: 10px;
}

div.teleostoptionblock {
    padding: 10px;
}

div.teleostoption {
    padding-left: 15px;
    padding-top: 5px;
}

div.displaysetupview {
    position: relative;
    top: 0px;
    left: 0px;
    width: 400px;
    min-height: 345px;
    padding: 5px;
    float: left;
}

div.viewnowshowing {
    background-color: orange;
    border: 2px solid orange;
}

iframe.displaypreviewframe {
    border: none;
}


div.viewpreview {
    border: 2px solid orange;
}

div.viewpreviewswitch {
    text-align: center;
    width: 100%;
    padding-top: 5px;
    padding-bottom: 5px;
    font-size: 16pt;
}

div.viewpreviewcurrent {
    width: 100%;
    text-align: center;
    padding-top: 5px;
    padding-bottom: 5px;
    font-size: 16pt;
}

div.viewcontrols {
    margin-top: 20px;
    margin-bottom: 50px;
    top: 0px;
}

div.viewoptions {
    /*overflow-y: auto;*/
}

div.viewsubmitbuttons {
    margin: 10px;
}

input.setdisplayoptionsbutton {
    height: 30px;
    width: 200px;
}

div.viewmenu {
    margin-top: 20px;
    border: 1px solid gray;
    background-color: silver;
    padding: 5px;
    width: 780px;
}

div.viewmenuheading {
    font-size: 16pt;
    font-weight: bold;
    padding: 10px;
}

div.viewmenurow {
    clear: both;
    height: 120px;
    width: auto;
}

div.viewmenucell {
    width: 133px;
    height: 100px;
    float: left;
    margin: 1px;
    padding: 1px;
}

div.viewmenucellbystander {
    border: 8px solid transparent;
}

div.viewmenucellselected {
    border: 8px solid blue;
}

div.viewmenucellshowing {
    border: 8px solid red;
}

div.opendisplaylink {
    font-weight: bold;
    margin-bottom: 10px;
}

div.opendisplaylink a {
    background-color: cyan;
    padding: 5px;
    border-radius: 5px;
}

span.sidebaropendisplaylink {
    background-color: cyan;
    font-size: 8pt;
    border-radius: 5px;
    line-height: 12pt;
    padding-top: 4px;
    padding-left: 2px;
    padding-right: 2px;
    margin-left: 4px;
}

div.sidebaropendisplaylink a {
}


input.tourneysetupnumber {
    width: 60px;
}

div.tourneyqualifyingcontrols {
    margin-top: 5px;
    margin-bottom: 5px;
    margin-left: 30px;
}

div.generalsetupcontrolgroup {
    clear: both;
    margin-top: 10px;
    margin-bottom: 10px;
    margin-left: 30px;
}

div.generalsetuptourneydetailslabel {
    display: inline-block;
    width: 8em;
}

div.generalsetuptourneydetailsbox {
    display: inline-block;
}

div.generalsetuptourneydetailsbox input {
    width: 20em;
}

span.generalsetupinputexample {
    color: gray;
    font-size: 10pt;
}

div.rulessubmit {
    margin-top: 30px;
    margin-bottom: 20px;
}

.handcursor {
    cursor: pointer;
}

.fixedwidth {
    font-family: monospace;
}


table.teamtable {
    border-collapse: collapse;
    border: 1px solid gray;
}

table.teamtable th {
    border: 1px solid gray;
    background-color: silver;
    color: black;
    padding: 2px 5px 2px 5px;
}

table.teamtable td {
    padding: 2px 5px 2px 5px;
    border: 1px dashed gray;
}

td.teamtableplayername {
    text-align: left;
}

td.teamtablebuttoncell {
    text-align: center;
}

div.playersetupcontainer {
    position: relative;
}

div.playersetuplistpanecontainer {
    min-width: 15%;
    max-width: 25%;
    float: left;
}

div.playersetuplistpane {
    padding-right: 10px;
}

div.playersetupformpanecontainer {
    width: 75%;
    float: left;
}

div.playersetupformpane {
    border-left: 1px solid gray;
    padding-left: 10px;
}

table.playerlisttable {
    border-collapse: collapse;
    width: 95%;
}

td.playerlistdivision {
    padding-top: 1.5ex;
    border-bottom: 1px solid silver;
}

tr.playerlistrow td {
    border-top: 1px solid silver;
    border-bottom: 1px solid silver;
}

tr.playerlistrowselected {
    background-color: #ffff88;
}

td.playerlistflags {
    text-align: right;
}

span.playercontrolhelp {
    font-style: italic;
    color: gray;
    font-size: 10pt;
    line-height: 12pt;
    vertical-align: middle;
}

span.playerlisttablepreficon {
    background-color: blue;
    color: white;
    padding: 2px 5px 2px 5px;
    font-size: 10pt;
}

input[type="checkbox"] {
    transform: scale(1.5);
}

input[type="radio"] {
    transform: scale(1.25);
}


/* SQL interface */

body.scary {
}

.sqlsidebar {
	width: 280px;
    background-color: #ffcccc;
}

div.sqlmainpane {
	margin-left: 300px;
}

div.sqlsidebarname {
    font-weight: bold;
}

table.sqlresults {
    border-collapse: collapse;
    background-color: white;
}

table.sqlresults th {
    border: 1px solid black;
    padding-left: 0.4em;
    padding-right: 0.4em;
}

table.sqlresults tr {
    border-bottom: 1px dashed gray;
    font-family: monospace;
}

td.sqlnull {
    color: gray;
    font-style: italic;
}

table.sqlresults td {
    border-left: 1px solid gray;
    border-right: 1px solid gray;
    padding-left: 0.4em;
    padding-right: 0.4em;
}

div.sqldictsection {
    margin-top: 1em;
}

div.sqldictsectionheading {
}

ul.sqldict {
    list-style-type: none;
    font-size: 10pt;
}

ul.sqldictcolumnlist {
    display: none;
}

ul.sqldict li.tablename {
    margin-top: 0.2em;
}


div.formbox {
}

div.formline {
}

div.formline label {
    margin-right: 20px;
}

div.formlabel {
    display: table-cell;
    padding: 5px;
}

div.formcontrol {
    display: table-cell;
    padding: 5px;
}

div.submitline {
    margin-top: 10px;
}

input.noteditable {
    background-color: #ddd;
    color: gray;
}

div.uploaderwidget {
    position: relative;
    min-height: 15px;
    max-height: 36px;
    max-width: 150px;
}

div.uploaderwidgeticon {
    position: absolute;
    max-height: 18px;
    width: 52px;
    top: 2px;
    left: 0px;
    text-align: center;
    font-size: 10pt;
}

div.uploaderwidgetstatus {
    position: absolute;
    max-height: 18px;
    left: 56px;
    top: 2px;
    line-height: 18px;
    text-align: center;
    font-size: 10pt;
    padding-left: 5px;
    padding-right: 5px;
    background-color: silver;
    border-radius: 5px;
}

a.widgetlink:link {
    color: black;
}

a.widgetlink:visited {
    color: black;
}

div.uploadconsole {
    width: 450px;
    border: 1px solid gray;
    margin-top: 15px;
    margin-left: 5px;
}

div.uploadconsoleenabled {
    text-align: center;
    padding: 5px;
}

div.uploadconsolestatus {
    text-align: center;
    border-top: 1px solid gray;
    padding: 5px;
}

div.uploadconsolediag {
    font-size: 10pt;
    border-top: 1px solid gray;
    padding: 5px;
}

div.shareablelinkbox {
    margin: 5px;
}
