﻿:root {
  --header-height:100px;
  --logo-margin:10px;
  --databoard-head-height:40px;
}
/*### BODY ###*/
@media screen  {
html, body {
  height:100%;
  width:100%;
  box-sizing:border-box;
  overflow:hidden;
  
}
body {
 touch-action:pan-x pan-y;
}
body, * {
  font-family:ptsans;
  font-size:14px;
}
strong {
  font-weight:bold;
}

body * {
 -webkit-user-select:none; /* Chrome, Safari, Opéra depuis la version 15 */
    -moz-user-select:none; /* Firefox */
     -ms-user-select:none; /* Internet explorer depuis la version 10 et Edge */
         user-select:none; /* Propriété standard */
}
body input,
body textarea{
 -webkit-user-select:auto; /* Chrome, Safari, Opéra depuis la version 15 */
    -moz-user-select:auto; /* Firefox */
     -ms-user-select:auto; /* Internet explorer depuis la version 10 et Edge */
         user-select:auto; /* Propriété standard */
}
}


/*### HEADER ###*/
@media screen  {
header {
  height:var(--header-height);
}
header #logo {
  position:relative;
  height:calc(var(--header-height) - var(--logo-margin) * 2);
  margin:var(--logo-margin) 0 var(--logo-margin) var(--logo-margin);
  float:left;
}
header #logo img {
  height:100%;
  width:auto;
}
header #lines {
	font-family:haettenschweiler;
  height:var(--header-height);
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-sizing:border-box;
  padding-left:30px;
}
header #subtitle,
header #leg {
	font-size:28px;
}
header #subtitle {
  text-transform:uppercase;
}
header #date {
	font-size:24px;
}
header #subtitle+#leg {
	font-size:18px;
}
header #leg sup:after {
  content:' : ';
}
#nav {
  display:none;
}
}


/*### BOARD ###*/
@media screen  {
#board {
  position:absolute;
  top:var(--header-height);
  bottom:0;
  left:0;
  right:0;
  overflow:auto;
}
  #board p {
    margin:0;
  }
    #board table {
      border-spacing:0px;
      border-collapse:separate;
    }
    #board table.bytime .bypoints,
    #board table.bypoints .bytime {
      display:none;
    }
    body.MONOCLASS table.nocorrected .title,
    #board table.nocorrected .title small {
      display:none;
    }

#board .title {
  padding:5px 5px;
  white-space:nowrap;
  font-weight:bold;
  text-align:center;
  position:sticky;
  top:0;
}
    #board .title big,
    #board .title small {
	    display:block;
    }
    #board .title big {
      display:block;
      font-family:haettenschweiler;
      font-size:22px;
      line-height:26px;
      font-weight:normal;
    }
    #board .title small {
      display:block;
      font-size:16px;
      font-weight:normal;
      line-height:18px;
    } 
    body.MONOCLASS #board.leaderboard .title big,
    body.MONOCLASS #board.resultsboard .title big,
    body.MONOCLASS #board.generalboard .title big {
	    display:none;
    }
    body.MONOCLASS #board.leaderboard .title big,
    body.MONOCLASS #board.resultsboard .title big,
    body.MONOCLASS #board.generalboard .title big {
	    display:none;
    }
    body.MONOCLASS #board.leaderboard .title small,
    body.MONOCLASS #board.resultsboard .title small,
    body.MONOCLASS #board.generalboard .title small {
      font-size:30px;
      line-height:26px;
    }
    body.REAL #board.leaderboard .title small,
    body.REAL #board.resultsboard .title small {
	    display:none;
    }
    body.MONOCLASS.REAL #board.leaderboard .title,
    body.MONOCLASS.REAL #board.resultsboard .title  {
	    display:none;
    }

#board .head,
#board .columns,
#board .columns td {
  top:0;
  position:sticky;
  z-index:1000;
}
#board .columns td {
	outline:1px solid;
	padding:3px 5px;
	vertical-align:middle;
	white-space:nowrap;
}
#board .columns td[colspan] {
  text-align:center !important;
}

#board .line {
	vertical-align:top;
	white-space:nowrap;
}
#board .line th,
#board .line td {
	padding:0 5px;
}
#board .line th {
  font-weight:bold !important;
  text-align:left;
}
#board .line td {
	border-bottom:1px solid;
}


#board .rank,
#board .status,
#board .heading,
#board .points,
#board .time,
#board .racetime,
#board .loc,
#board .dtf,
#board .date,
#board .lat,
#board .lng,
#board .heading,
#board .speed,
#board .dist,
#board .gaps,
#board .percent,
#board .advance,
#board .ortho,
#board .overg {
  text-align:right;
}

#board .boat {
  width:100%;
}

#board .body .rank {
  font-size:22px !important;
	line-height:22px;
  font-weight:bold;
}
#board .body .rank small {
  display:block;
  font-size:11px !important;
	line-height:11px;
  font-weight:bold;
}
#board .photos .body .boat {
  padding:2px;
}
    #board .body .boat .photo {
      display: block;
      position: relative;
      width: 4px;
      height: 60px;
      float: left;
      margin-right:5px;
      margin-left: -5px;
    }
        #board .photos .body .boat .photo {
          position: relative;
          width: 60px;
          margin-left: 0px;
        }
        #board .body .boat .photo img {
          position:absolute;
          top:0;
          left:0;
        }
    #board .body .boat.nophoto .photo {
      border-radius:0;
      padding-right:0;
      width:4px;
      height:54px;
      margin-top:2px;
    }

    #board .body .boat big {
      display:block;
      font-size:16px;
      line-height:20px;
      font-weight:bold;
      padding:2px 0 0 0;
    }
    #board .body .boat small {
      display:block;
      font-size:14px;
      font-weight:bold;
      line-height:16px;
    }
        #board .body .boat small>.sailor+.sailor:before {
          content:' / ';
        }
        #board .body .boat small>.sailor+.sailor:empty:before {
          content:'';
        }
    #board .body .boat sub {
      display:none;
    }
    #board .body .boat .infos {
      display:none;
      font-style:italic;
    }
        #board .body .boat .infos * {
          font-size:12px;
        }
            #board .body .boat .infos dfn {
              *font-style: normal;
            }
            #board .body .boat .infos dfn+dfn:before {
              content: ' • ';
            }
            #board .body .boat .infos dfn label {
              *text-decoration: none;
              font-weight: bold !important;
            }
            #board .body .boat .infos dfn label:after {
              content: ' : ';
            }
            #board .body .boat .infos dfn q {
              font-style:italic;
            }

#board .body .points {
  font-size:18px !important;
  font-weight:bold;
}
#board .body .heading:after {
  content:'°';
}
#board .body b {
  font-weight:bold;
  display:block;
}
#board .body i {
  opacity:0.6;
  display:block;
}
#board .body .date small {
  display:none;
}
#board.leaderboard table.RESULT .head td {
  line-height:50px;
}

}


/*### DATABOARD ###*/
@media screen  {
.databoard>table {
  border-spacing:0px;
  border-collapse:separate;
  padding:0;
  float:left;
  width:100%;
}
.databoard .head {
  position:sticky;
  top:0;
	white-space:nowrap;
	font-weight:bold;
	text-align:center;
  font-size:24px;
  line-height:var(--databoard-head-height);
  height:var(--databoard-head-height);
	padding:0 5px;
}
.databoard .head .mainbuttons {
  display:none;
}
    
.databoard .lines {
  height:100%;
 }
.databoard .lines table {
  border-collapse:separate;
 }
.databoard .lines thead {
  position:sticky;
  top:var(--databoard-head-height);
 }
.databoard .lines thead th {
	padding:0 5px;
	height:20px;
	line-height:20px;
	text-align:left !important;
	padding:3px 5px;
	vertical-align:middle;
	white-space:nowrap;
	outline:1px solid;
}
body.MONOCLASS .databoard .lines tbody tr.group {
  display:none;
}
.databoard .lines tbody tr.group th {
  font-size:20px;
	height:30px;
	line-height:30px;
	font-weight:bold !important;
	text-align:center !important;
}

.databoard .lines tbody td {
	padding:0 5px;
	line-height:24px;
	vertical-align:middle;
	white-space:nowrap;
  border-bottom:1px solid;
  border-right:1px solid;
}
.databoard .lines thead th.rf {
  width:100%;
}
.databoard .lines tbody td.rf {
  font-size:16px;
  font-weight:bold;
  text-align:left;
  width:100%;
}
		.databoard .lines .rf {
			font-weight:bold;
		}
		.databoard .lines .ar {
			text-align:right !important;
		}
		.databoard .lines .ac {
			text-align:center !important;
		}
		.databoard .lines .wr {
			text-wrap:normal !important;
		}

}
