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

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

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

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

body.display {
    font-family: "Roboto Condensed", sans-serif;
    --text-font-family: "Roboto Condensed";
    --heading-font-family: "Cabin";
    overflow: hidden;
    position: absolute;
    width: 100%;
    height: 100%;
    margin: 0;
    background-color: black;

    color: white;
    text-shadow:
        -1px -1px 0 #000,
        1px -1px 0 #000,
        -1px 1px 0 #000,
        1px 1px 0 #000;
    white-space: nowrap;
}

#displaymainpane {
    position: absolute;
    width: 100%;
    height: 100%;
}

#teleostbanner {
    position: absolute;
    width: 100%;
    text-align: center;
    background-color: #aa0000;
    font-size: 4.5vmin;
    height: 7vmin;
    line-height: 7vmin;
    z-index: 1;
    display: none;
    /*font-family: var(--heading-font-family);*/
}

/* General look and feel that applies to all screens */
.headingbar {
    background-color: navy;
    font-family: var(--heading-font-family);
    border-top: 1px solid gray;
    border-bottom: 1px solid gray;
}

/* Placeholder */
div.placeholder {
    position: absolute;
    top: 45%;
    width: 100%;
    text-align: center;
    font-size: 5vmin;
}

/* Technical difficulties slide, etc */
div.imageviewcontainer {
    position: absolute;
    width: 100vw;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
}

img.imageviewimage {
    max-width: 100%;
    max-height: 100%;
}

/* Standings table */
table.teleoststandings {
    position: absolute;
    left: 5%;
    top: 10%;
    font-size: 4.8vmin;
    width: 90%;
    max-width: 90%;
    border-collapse: collapse;
    table-layout: fixed;
}

table.teleoststandings tr {
    height: 10%;
    border-top: 1px solid gray;
}

tr.teleoststandingsheadingrow {
}

table.teleoststandings th {
    font-family: var(--heading-font-family);
    padding-left: 2%;
    padding-right: 2%;
    font-weight: normal;
}

th.teleoststandingsheadingstring {
    text-align: left;
}

th.teleoststandingsheadingnumber {
    text-align: right;
}

table.teleoststandings td {
    padding-left: 2vw;
    padding-right: 2vw;
    border-top: 1px solid gray;
    border-bottom: 1px solid gray;
}

tr.teleoststandingsevenrow {
    background-color: #000022;
}

tr.teleoststandingsoddrow {
    background-color: #000044;
}

tr.teleoststandingsqualified {
    background-color: #005500;
}

col.teleoststandingscolpos {
    color: yellow;
    width: 8vw;
}

col.teleoststandingscolname {
    width: 50vw;
}

col.teleoststandingscolplayed {
    color: cyan;
    width: 12vw;
}

col.teleoststandingscolwins {
    color: cyan;
    width: 8vw;
}

col.teleoststandingscolpoints {
    color: cyan;
    width: 10vw;
}

td.teleoststandingspos {
    color: yellow;
}

td.teleoststandingsnumbercol {
    color: cyan;
}

span.withdrawn {
    color: gray;
}

.teleostnumber {
    text-align: right;
}

div.videprintercontainer {
    position: absolute;
    background-color: #000040;
    left: 0%;
    width: 100%;
    height: 100%;
    /*border-bottom: 2px solid #004000;*/
    border-top: 0.75vh ridge silver;
}

table.teleostvideprinter {
    position: relative;
    left: 5%;
    font-size: 4vmin;
    color: white;
}

table.teleostvideprinter td {
    padding-top: 0.5vh;
    padding-bottom: 0.5vh;
}

td.teleostvideprinterpreamble {
    width: 12vw;
    text-align: right;
    padding-right: 1vh;
}

td.teleostvideprinterentry {
    padding-left: 2vh;
    overflow: hidden;
}

@keyframes videprinter_animate_entry {
    from { width: 0; }
    to { width: 100%; }
}

div.videprinteranimatescoreline {
    animation: videprinter_animate_entry 1s steps(20);
    overflow: hidden;
    white-space: nowrap;
}

.videprinterroundandtable {
    color: orange;
    padding-right: 2vh;
}

.videprinterscore {
    color: white;
    padding-left: 2vh;
    padding-right: 2vh;
}

.videprinterplayer {
    color: white;
}

.teamdotleftplayer {
    padding-left: 1vmin;
}

.teamdotrightplayer {
    padding-right: 1vmin;
}

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

.videprintercomment {
    color: cyan;
}

.videprintercommentbullet {
    color: orange;
    padding-right: 0.5vw;
}

/* Team score: appears on various views */
.teamscore {
    font-size: 4vmin;
    padding-left: 2vmin;
    padding-right: 2vmin;
    margin-left: 1vmin;
    margin-right: 1vmin;
    width: 6vmin;
    text-align: center;
    font-family: var(--text-font-family);
    /*font-weight: bold;*/
    /*font-family: var(--heading-font-family);*/
    /*color: black;
    text-shadow:
        -1px -1px 0 #fff,
        1px -1px 0 #fff,
        -1px 1px 0 #fff,
        1px 1px 0 #fff;*/
}

.teamscoreleft {
    float: left;
}

.teamscoreright {
    float: right;
}

.teamscorelight {
    text-shadow: none;
    color: black;
}

/* Current round per-table results */

.roundresultsheading {
    position: absolute;
    top: 0vmin;
    left: 5%;
    height: 6vmin;
    line-height: 6vmin;
    width: 90%;
    overflow: hidden;
    border-collapse: collapse;
    font-size: 4.5vmin;
    padding-top: 0.5vmin;
    padding-bottom: 0.5vmin;
}

span.roundresultsdivision {
    position: absolute;
    height: 100%;
    left: 0;
    text-align: left;
    padding-left: 1vmin;
}

span.roundresultsround {
}

.roundresultsleftheading {
    position: absolute;
    left: 0%;
    width: 48%;
    text-align: right;
}

.roundresultsrightheading {
    position: absolute;
    left: 52%;
    text-align: left;
}

.roundresultscentreheading {
    position: absolute;
    text-align: center;
    left: 0%;
    width: 100%;
}

table.roundresults {
    position: absolute;
    font-size: 4vmin;
    top: 7vmin;
    left: 5%;
    width: 90%;
    max-width: 90%;
    border-collapse: collapse;
    table-layout: fixed;
}

col.roundresultscolp1 {
    width: 40%;
}

col.roundresultscolscore {
    width: 20%;
}

col.roundresultscolp2 {
    width: 40%;
}

table.roundresults tr {
    border-bottom: 1px solid gray;
}

table.roundresults td {
    padding-left: 1vmin;
    padding-right: 1vmin;
    padding-top: 0.5vmin;
    padding-bottom: 0.5vmin;
    overflow: hidden;
}

td.roundresultsp1 {
    text-align: right;
}

td.roundresultsscore {
    text-align: center;
}

td.roundresultsp2 {
    text-align: left;
}

/* Fixtures view */
div.fixturescontainer {
    position: absolute;
    left: 0%;
    top: 5%;
    width: 100%;
    height: 100%;
}

.fixturesheading {
    height: 10%;
    width: 100%;
}

.fixturesheadingtext {
    position: absolute;
    padding-top: 1.8vh;
    left: 14%;
    width: 86%;
    font-size: 5vmin;
}

.fixturesheadingdivision {
    position: absolute;
    left: 0%;
    text-align: left;
}

.fixturesheadinground {
    position: absolute;
    left: 0%;
    width: 94%;
    text-align: center;
}

.fixturesheadingteamscore {
    position: absolute;
    left: 0%;
    width: 94%;
    text-align: right;
}

table.fixtures {
    position: absolute;
    font-size: 4vmin;
    left: 5%;
    width: 90%;
    max-width: 90%;
    border-collapse: collapse;
    table-layout: fixed;
}

table.fixtures tr {
    height: 6vmin;
    min-height: 6vmin;
}

tr.fixturesrowlastinblock {
    border-bottom: 1px solid gray;
}

td.fixturestablenumbercell {
    width: 10%;
    border-bottom: 1px solid gray;
    text-align: center;
}

.fixturestablenumber {
    font-family: var(--heading-font-family);
    border-radius: 2vmin;
    border: 1px solid gray;
    background-color: navy;
}

td.fixturesp1 {
    text-align: right;
    width: 37.5%;
    overflow: hidden;
    padding-left: 1vmin;
}

td.fixturesscore {
    text-align: center;
    width: 15%;
}

td.fixturesp2 {
    text-align: left;
    width: 37.5%;
    overflow: hidden;
}


/* Name-to-table index */

div.viewheading {
    position: absolute;
    top: 5vh;
    left: 0%;
    width: 100%;
    height: 10vh;
    font-size: 6vmin;
    text-align: center;
}

div.viewheadingtext {
    position: relative;
    line-height: 10vh;
}

div.tabindexbigtable {
    position: absolute;
    top: 20%;
    left: 5%;
    height: 70%;
    width: 90vw;
    font-size: 4vmin;
}

div.tabindexcolumn {
    position: relative;
    float: left;
}

div.tabindexcolumnspace {
    position: relative;
    float: left;
}

table.tabindextable {
    position: relative;
    width: 100%;
    border-collapse: separate;
    border-spacing: 1vmin;
    table-layout: fixed;
}

table.tabindextable tr {
}

td.tabindexname {
    background-color: navy;
    text-align: left;
    width: 80%;
    overflow: hidden;
    padding-left: 1vmin;
}

td.tabindexnumber {
    background-color: blue;
    text-align: center;
    width: 15%;
    font-family: var(--heading-font-family);
}

/* Tuff luck */

table.teleostmaintable {
    position: absolute;
    left: 5%;
    top: 20%;
    font-size: 4.8vmin;
    width: 90%;
    max-width: 90%;
    border-collapse: collapse;
    table-layout: fixed;
}

table.teleostmaintable th {
    padding-right: 2vw;
}

table.teleostmaintable tr {
    border-bottom: 1px solid gray;
}

table.teleostmaintable td {
    padding-left: 2vw;
    padding-right: 2vw;
}

th.teleosttableheadingstring {
    text-align: left;
}

th.teleosttableheadingnumber {
    text-align: right;
}

table.teleostmaintable th {
    font-weight: normal;
}

col.teleosttuffluckcolpos {
    color: yellow;
    width: 8vw;
}

col.teleosttuffluckcolname {
    color: white;
    width: 60vw;
}

col.teleosttuffluckcoltuffness {
    color: cyan;
    width: 15vw;
}

td.teleosttablecellpos {
    color: yellow;
}

td.teleosttablecellname {
    overflow: hidden;
    color: white;
}

td.teleosttablecellnumber {
    color: cyan;
}

/* Overachievers */
col.teleostoverachieverscolpos {
    width: 8vw;
}

col.teleostoverachieverscolname {
    width: 50vw;
}

col.teleostoverachieverscolseed {
    width: 8vw;
}

col.teleostoverachieverscolrank {
    width: 8vw;
}

col.teleostoverachieverscoldiff {
    width: 8vw;
}

/* High scores view */

div.highscoresheading {
}

table.tableofgames {
    position: absolute;
    font-size: 4vmin;
    left: 5vw;
    top: 20vh;
    width: 90%;
    max-width: 90%;
    border-collapse: collapse;
    table-layout: fixed;
}

table.tableofgames tr {
    border-top: 1px solid gray;
    border-bottom: 1px solid gray;
}

table.highscorestable td {
    padding: 1vmin;
}

col.highscorescolround {
    width: 10%;
}

col.highscorescolp1 {
    width: 35%;
}

col.highscorescolp2 {
    width: 35%;
}

col.highscorescolscore {
    width: 20%;
}

td.highscoresround {
    color: orange;
}

/* Clock */
img.teleostclockhourhand {
    position: absolute;
    z-index: 1;
}

img.teleostclockminutehand {
    position: absolute;
    z-index: 2;
}
