@font-face {
    font-family: 'alte_din_1451_mittelschriftRg';
    src: url('din1451alt-webfont.woff2') format('woff2'),
         url('din1451alt-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

.out-of-race{
	color:red !important;
}

.driver-name{
	min-width:100px;
}

.best-lap-own{
	color:palegreen !important;
}

.best-lap-overall{
	color: plum !important;
}

#drivers-table{
  border-spacing:2px;
  background-color: black;
  width:100%;
}

.driver-position{
  color: #111111;
  background-color: #fbbf24;
  width: 28px;
  text-align: center;
  font-family: 'Share Tech Mono', monospace;
  font-size: 1.1em;
  font-weight: 900;
  border-radius: 4px;
}

.driver-headers{
color:#D4DABA;
}

.headers-left{
  text-align:left;
}

.headers-right{
  text-align:right;
}

.driver-team-names{
text-align:left;
color:#E9E5AA;
}

.driver-other-numbers{
  color:#E2E2E2;
  text-align:right;
}

.white-tire{
	color:white;
}

.yellow-tire::before, .yellow-tire::after{
	color:yellow;
}

.blue-tire::before, .blue-tire::after{
	color:blue;
}

.green-tire{
	color:green;
}

.red-tire::before, .red-tire::after{
	color:red;
}


.driver-flag{
	height:20px;
	width: 30px;
}

#race-flag{
  height:40px;
  width: 60px;
}

.driver-text{
  font-family: 'alte_din_1451_mittelschriftRg';
  font-size:1.1em;
  padding: 2px 5px 2px 5px;
}

html, body {
  min-height: 100vh !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

body {
  background-color: #282828 !important;
  background-image: none !important;
  display: flex !important;
  flex-direction: column !important;
  padding-top: 60px !important;
  box-sizing: border-box;
}

html body #logged-user {
  display: none !important;
}

html body #top-bar {
  background: rgba(0, 0, 0, 0.9) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
}

html body #bottom-bar {
  position: relative !important;
  bottom: auto !important;
  width: 100% !important;
  flex-shrink: 0 !important;
  background: rgba(0, 0, 0, 0.9) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.12) !important;
  margin-top: auto !important;
  z-index: 10 !important;
}

#copyright-text::after{
  content: " and Zé D'Agostini";
}

#container-live-main{
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  flex: 1 0 auto !important;
  min-height: calc(100vh - 110px) !important;
  height: auto !important;
  border-radius:10px;
  box-sizing: border-box;
}

#container-live-aux{
  width:50%;
  height:100%;
  display: flex;
  flex-direction: column;
}

#container-live-table{
  width:50%;
  overflow-y:auto;
  /* height:580px; */
  height:100%;
  width:50%;
  display:flex;
  flex-direction: column;
  flex-wrap: nowrap;
  box-sizing: border-box;
  background-color:black;
  border: gray 2px solid;
  filter: drop-shadow(10px 10px 4px black);
  box-shadow: 0 0 3pt 2pt black;
  border-radius:10px;
  padding:20px;
  margin: 20px 30px 100px 10px;
  overflow-y: auto;
}

#container-race-info{

    width:95%;
    overflow:hidden;
    /* height: 40%; */
    /* min-height: 300px; */
    display:flex;
    flex-direction: column;
    flex-wrap: nowrap;
    box-sizing: border-box;
    background-color:black;
    border: gray 2px solid;
    filter: drop-shadow(10px 10px 4px black);
    box-shadow: 0 0 3pt 2pt black;
    border-radius:10px;
    padding:20px;
    margin: 20px 30px 10px 10px;

}

#container-race-podium{
    width:95%;
    overflow:hidden;
    /* height: 40%; */
    /* min-height: 300px; */
    display:flex;
    flex-direction: column;
    flex-wrap: nowrap;
    box-sizing: border-box;
    background-color:black;
    border: gray 2px solid;
    filter: drop-shadow(10px 10px 4px black);
    box-shadow: 0 0 3pt 2pt black;
    border-radius:10px;
    padding:20px;
    margin: 10px 30px 10px 10px;
}

#race-name-bar{
  /* line-height: 40px; */
  height: 40px;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items:center;
}

#race-weather-bar{
  height: 50px;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items:center;
  justify-content: center;
  margin-top:0px;
}

#weather-name{
  font-size: 1.4em;
  /* width:30%; */
  text-align: center;
  font-family: 'alte_din_1451_mittelschriftRg';
}

#race-name{
  /* display: inline-block; */
  font-family: 'krunchbold_italic';
  font-size: 1.4em;
  padding-left:10px;
  /* vertical-align: middle; */
  /* line-height: normal; */
}

#track-name{
  font-size: 1.4em;
  width:70%;
  /* text-align: center; */
  font-family: 'alte_din_1451_mittelschriftRg';
}

.tire{
font-family: 'Outfit', sans-serif;
font-weight: 400;
color:white !important;
}

.out-quali{
  background-color: red;
}

.tire::before{
  font-family: 'Outfit', sans-serif;
  font-weight: 900;
  content:"(";
}

.tire::after{
  font-family: 'Outfit', sans-serif;
  font-weight: 900;
  content:")";
}

#race-timing-box{
  width:70%;
  height: 80px;
}

#race-flag-box{
  width: 100%;
  max-width: 220px;
  height: 85px;
  box-sizing: border-box;
  border-radius:10px;
  padding:8px 12px;
  display:flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  position: relative;
  overflow: hidden;
}

#race-flag-box:empty {
  border: none;
  background: transparent;
  box-shadow: none;
}

.flag-name{
  font-family: 'krunchbold';
  font-size: 1.15em;
  line-height: 1.1;
  color:black;
  text-align:center;
  margin: 0;
  padding: 0;
  white-space: nowrap;
}

.safety-car{
  background-color: #fbbf24;
  box-shadow: 0 0 15px rgba(251, 191, 36, 0.4);
}

.green-flag{
  background-color: #22c55e;
  box-shadow: 0 0 15px rgba(34, 197, 94, 0.4);
}

.chequered-flag{
  background-color: #ffffff;
  box-shadow: 0 0 15px rgba(255, 255, 255, 0.4);
}

.starting-lights{
  position:relative;
  border: 1px solid rgba(255, 255, 255, 0.2);
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);
  padding: 6px 10px;
}

.flag-icon{
  font-size: 2.2em;
  line-height: 1;
  transform: rotate(15deg);
  color:black;
  margin-bottom: 3px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
}

#race-boxes{
  display:flex;
  flex-direction: row;
  flex-wrap: nowrap;
}

#race-technical-box{
  display:flex;
  flex-direction: column;
  flex-wrap: nowrap;
  margin-top:20px;
  width:30%;
  justify-content: flex-start;
  align-items: center;
  gap: 10px;
}

#race-timing-info{
  display:flex;
  flex-direction: column;
  flex-wrap: nowrap;
  margin-top:20px;
  width:70%;
}

#race-timing-box{
  display:flex;
  flex-direction: column;
  flex-wrap: nowrap;
}

#event-name{
  font-size: 2em;
  font-family: 'alte_din_1451_mittelschriftRg';
}

#lap-time-counter{
  font-size:3em;
  font-family: 'alte_din_1451_mittelschriftRg';
}

#day-hour-minute-box{
  display:flex;
  flex-direction:row;
  flex-wrap: nowrap;
  margin:10px;
  box-sizing: border-box;
  width:70%;
}

#day-hour-minute-box-two{
  display:flex;
  flex-direction:row;
  flex-wrap: nowrap;
  margin:20px;
  padding:10px;
  box-sizing: border-box;
  width:100%;
}

#hour-box, #day-box, #hour-box-two, #day-box-two{
  border-right: 2px solid #232323;
}

#hour-box::after, #hour-box-two::after{
    content: "HRS";
    color:#585858;
    font-size:40%;
}

#day-box::after, #day-box-two::after{
  content: "DAYS";
  color:#585858;
  font-size:40%;
}

#minute-box::after, #minute-box-two::after{
  content: "MINS";
  color:#585858;
  font-size:40%;
}

#second-box::after{
  content: "SEC";
  color:#585858;
  font-size:40%;
}

.timing-box{
width:33%;
color:white;
font-size:2.8em;
font-family: 'krunchbold';
text-align:center;
display:flex;
flex-direction: column;
}

.timing-box::after{

}

#rolex-time{
width:30%;
height:100%;
background-color:#282828;
border-top-right-radius: 10px;
border-bottom-right-radius: 10px;
position:relative;
/* display:flex;
align-items: center;
justify-content: center; */
}

#rolex-face, #rolex-minute, #rolex-second, #rolex-hour{
  position:absolute;
  top:50%;
  left:50%;
  margin-left:-35px;
  margin-top:-35px;
  width: 70px;
  height: 70px;
}

/* @keyframes rotate {
  100% {
    transform: rotateZ(360deg);
  }
} */



/* #rolex-minute {
  animation: rotate 3600s infinite linear;
} */


#countdown-container, #countdown-container-two{
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  height:100%;
  width:100%;
  border-radius:10px;
  background-color: #181818;
}


#grid-container{
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  width: 100%;
  background-color:white;
  border-radius:10px;
}

.grid-row{
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  width: 100%;
  height:150px;
  align-items: flex-end;
}

.grid-element:first-child{
  align-self: flex-start;
}

.grid-element{
  width: 50%;
  height: 70%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  border-radius:10px;
  margin: 5px;
}

.grid-pos{
  width:15%;
  height: 50%;
  background-color: black;
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
  align-self: flex-end;
  display: flex;
  align-items: center;
  justify-content: center;
}

.grid-pos span{
  font-family: "krunchbold";
  font-size: 2em;
  color:yellow;
}

.grid-driver{
  width:85%;
  height: 100%;

}

.grid-car{
  width:100%;
  height: 70%;
  border-top-right-radius: 10px;
  box-sizing: border-box;
  display:flex;
  align-items: flex-end;

}

.grid-car img{
  max-width:100%;
  max-height: 100%;
  width:auto;
  height: auto;
    box-sizing: border-box;
}

.grid-driver-label{
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  width:100%;
  height: 30%;
}

.grid-driver-name{
  height: 100%;
  width: 60%;
  display:flex;
  align-items: center;
  justify-content: center;
  background-color: black;
}

.grid-driver-name span{

  font-family: "alte_din_1451_mittelschriftRg";
  /* font-family: "krunchbold"; */
  font-size: 1.1em;
  font-weight: bold;
  color:white;
  text-transform: uppercase;
}

.grid-driver-time{
  height: 100%;
  width: 30%;
  background-color: white;
  display:flex;
  align-items: center;
  justify-content: center;
}

.grid-driver-time span{

  font-family: "alte_din_1451_mittelschriftRg";
  font-size: 1.2em;
  font-weight: bold;
  color:black;
}

.grid-driver-quali{
  height: 100%;
  width: 10%;
  background-color: black;
  border-bottom-right-radius: 10px;
  display:flex;
  align-items: center;
  justify-content: center;
}

.grid-driver-quali span{

  font-family: "alte_din_1451_mittelschriftRg";
  font-size: 1.2em;
  font-weight: bold;
  color:white;
}

/*  starting lights */

.light {
  border-radius: 50%;
  background: #1e1e1e;
  border: 1px solid #0a0a0a;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.8);
  height: 10px;
  width: 10px;
  min-height: 10px;
  min-width: 10px;
  box-sizing: border-box;
  margin: 0;
}

.light-strip.on .light:nth-child(1n+3) {
  background: #ff1e1e !important;
  border-color: #ff5555 !important;
  box-shadow: 0 0 6px #ff0000, 0 0 12px #ff2222, inset 0 0 3px #ffffff !important;
}

#f1-lights {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 2;
  gap: 5px;
}

.light-strip {
  background: #0d0d0d;
  border: 1px solid #333333;
  border-radius: 4px;
  position: relative;
  flex: 0 0 20px;
  width: 20px;
  height: 64px;
  max-height: 100%;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-evenly;
  padding: 3px 0;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.7);
}

#back-board {
  position: absolute;
  left: 0px;
  right: 0px;
  top: 50%;
  transform: translateY(-50%);
  height: 10px;
  background: #111111;
  border-top: 1px solid #333333;
  border-bottom: 1px solid #000000;
  width: 100%;
  z-index: 1;
}


/* sky gradients */
/* Gradients */
.sky-gradient-night-3 { background: linear-gradient(to bottom, #020111 10%,#3a3a52 100%); }
.sky-gradient-night-4 { background: linear-gradient(to bottom, #20202c 0%,#515175 100%); }
.sky-gradient-night-5 { background: linear-gradient(to bottom, #40405c 0%,#6f71aa 80%,#8a76ab 100%); }
.sky-gradient-night-6 { background: linear-gradient(to bottom, #4a4969 0%,#7072ab 50%,#cd82a0 100%); }
.sky-gradient-day-1 { background: linear-gradient(to bottom, #94c5f8 1%,#a6e6ff 70%,#b1b5ea 100%); }
.sky-gradient-day-2 { background: linear-gradient(to bottom, #b7eaff 0%,#94dfff 100%); }
.sky-gradient-day-3 { background: linear-gradient(to bottom, #9be2fe 0%,#67d1fb 100%); }
.sky-gradient-day-4 { background: linear-gradient(to bottom, #90dffe 0%,#38a3d1 100%); }
.sky-gradient-day-5 { background: linear-gradient(to bottom, #57c1eb 0%,#246fa8 100%); }
.sky-gradient-rain-1 { background: linear-gradient(to bottom, #2d91c2 0%,#1e528e 100%); }
.sky-gradient-rain-2 { background: linear-gradient(to bottom, #2473ab 0%,#1e528e 70%,#5b7983 100%); }
.sky-gradient-night-7 { background: linear-gradient(to bottom, #1e528e 0%,#265889 50%,#9da671 100%); }
.sky-gradient-night-8 { background: linear-gradient(to bottom, #1e528e 0%,#728a7c 50%,#e9ce5d 100%); }
.sky-gradient-night-9 { background: linear-gradient(to bottom, #154277 0%,#576e71 30%,#e1c45e 70%,#b26339 100%); }
.sky-gradient-night-1 { background: linear-gradient(to bottom, #163C52 0%,#4F4F47 30%,#C5752D 60%,#B7490F 80%, #2F1107 100%); }
.sky-gradient-night-2 { background: linear-gradient(to bottom, #071B26 0%,#071B26 30%,#8A3B12 80%,#240E03 100%); }


/* Main race banners */

#container-foca{
  width:97%;
  height:50%;
  margin:10px;
  box-sizing: border-box;
  background-color:black;
  border: gray 2px solid;
  filter: drop-shadow(10px 10px 4px black);
  box-shadow: 0 0 3pt 2pt black;
  border-radius:10px;
  padding:10px;
  overflow: hidden;
}

#container-foca-two{
  width:48%;
  height:50%;
  margin:10px 0 20px 10px;
  box-sizing: border-box;
  background-color:black;
  border: gray 2px solid;
  filter: drop-shadow(10px 10px 4px black);
  box-shadow: 0 0 3pt 2pt black;
  border-radius:10px;
  padding:10px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

#container-other-competitions{
  width:48%;
  height:50%;
  background-color:aquamarine;
  margin:10px 0 20px 10px;
  box-sizing: border-box;
  background-color:black;
  border: gray 2px solid;
  filter: drop-shadow(10px 10px 4px black);
  box-shadow: 0 0 3pt 2pt black;
  border-radius:10px;
  padding:10px;
  overflow-y: hidden;
  overflow-x: auto;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
}

#race-live-viewer{
  width:100%;
  height:87%;
  display:flex;
  flex-direction:row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;

}

body{
  overflow-y:hidden;
}

#container-foca{
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

#foca-country-year-outer{
  height: 70%;
  width:30%;
  display:flex;
}


#foca-countdown-outer{
  height: 30%;
  width:30%;
  display:flex;
}

#foca-circuit-outer{
  height: 100%;
  max-width:30%;
  width:auto;
  /* background: salmon; */
  filter: invert(1);
}

#foca-logo-live{
  max-height: 100%;
  max-width:30%;
  width:auto;
  height: auto;
}

#new-race-season-container{
  display:flex;
  flex-direction: row;
  flex-wrap: nowrap;
}

#new-race-season-container > button{
  background-color: #A3A3A3;
  border-radius: 5px;
  margin:5px;
  font-family: 'alte_din_1451_mittelschriftRg';
  color:black !important;
  font-size:1.1em;
}

#new-race-season-container > div > input, #new-race-season-container > div > select{
  background-color: black;
    border: 2px solid #808080;
    outline: none;
    border-radius: 5px;
    width: calc(100% - 20px);
    padding: 10px;
    color: #808080;
    font-size: 1.2em;
    text-align: center;
    margin: 10px;
    box-sizing: border-box;
    text-align-last:center;
}

#new-race-season-container option{
  text-align:center;
}

#new-race-season-container > div > label{
  margin-top: 5px;
  width: 100%;
  text-align: center;
  font-weight: bold;
}

#new-race-season-container > div{
  display:flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  width:100%;
}

#new-race-season-container > div > button{
  width:calc(50% - 10px);
  border-radius: 5px;
  margin:5px;
}

#new-race-season-container > div > button:first-of-type{
  font-family: 'alte_din_1451_mittelschriftRg';
  background-color:palegreen;
  color:darkgreen;
  font-size: 1.1em;
  font-weight: bold;
}

#new-race-season-container > div > button:last-of-type{
  font-family: 'alte_din_1451_mittelschriftRg';
  background-color:lightcoral;
  color:darkred;
  font-size: 1.1em;
  font-weight: bold;
}

.editable-race, .see-race{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  min-width: 28px;
  min-height: 28px;
  border-radius: 6px;
  text-decoration: none;
  transition: all 0.2s ease;
  flex-shrink: 0;
  cursor: pointer;
}

.see-race{
  background: rgba(56, 189, 248, 0.15);
  border: 1px solid rgba(56, 189, 248, 0.4);
  color: #38bdf8 !important;
}

.see-race:hover{
  background: #0284c7;
  border-color: #38bdf8;
  color: #ffffff !important;
  transform: scale(1.08);
  box-shadow: 0 0 10px rgba(56, 189, 248, 0.4);
}

.editable-race{
  background: rgba(251, 191, 36, 0.15);
  border: 1px solid rgba(251, 191, 36, 0.4);
  color: #fbbf24 !important;
}

.editable-race:hover{
  background: #d97706;
  border-color: #fbbf24;
  color: #ffffff !important;
  transform: scale(1.08);
  box-shadow: 0 0 10px rgba(251, 191, 36, 0.4);
}

.editable-race .material-symbols-outlined,
.see-race .material-symbols-outlined{
  font-size: 18px;
  line-height: 1;
}

#foca-country-year-outer > span, #foca-countdown-outer > span{
  font-weight: 700;
  font-family: 'alte_din_1451_mittelschriftRg';
  font-size: 4em;
  align-self: center;
}

#foca-two-country-year-outer > span{
  font-weight: 700;
  font-family: 'alte_din_1451_mittelschriftRg';
  font-size: 2em;
  align-self: center;
}

.out-of-season{
  cursor: auto;
}

#foca-country-year-outer > div, #foca-two-country-year-outer > div{
  display:flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  height: 100%;
}

#foca-country-year-outer > div > span{
  font-weight: 700;
  font-family: 'krunchbold';
  font-size: 3em;
  align-self: center;
  margin:5px;
}

#foca-two-country-year-outer > div > span{
  font-weight: 700;
  font-family: 'krunchbold';
  font-size: 2em;
  align-self: center;
  margin:5px;
}

.clickable-true{
  cursor:pointer;
}

#foca-two-country-year-outer, #foca-two-countdown-outer{
  padding:10px;
  width:50%;
  height: 50%;
  box-sizing: border-box;
}

#foca-two-country-year-outer{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

 #foca-two-circuit-outer, #foca-two-logo-live{
   padding:5px;
   max-width:50%;
   max-height: 50%;
   box-sizing: border-box;
 }

 .other-competition-card{
   width:200px;
   height: 100%;
   display: flex;
   flex-direction: column;
   flex-wrap: nowrap;
   box-sizing: border-box;
   align-items: center;
   justify-content: center;
   background-color: white;
   margin:3px;
   border-radius:10px;
 }

.other-competition-name{
  max-height: 20%;
  max-width: 100%;
  height: auto;
  width: auto;
  /* box-sizing: border-box; */
}

.other-competition-circuit{
  max-height: 45%;
  max-width: 100%;
  height: auto;
  width: auto;
  /* box-sizing: border-box; */
}

.other-competition-race-name-year >span{
  font-weight: 700;
  font-family: 'krunchbold';
  font-size: 1em;
  align-self: center;
  margin:5px;
  text-align: center;
  color: black;
}

.other-competition-date-time >span{
  font-weight: 700;
  font-family: 'alte_din_1451_mittelschriftRg';
  font-size: 1em;
  align-self: center;
  margin:5px;
  text-align: center;
  color: black;
}

.other-competition-date-time{
  margin-top:20px;
}

.other-competition-race-name-year{
  display: flex;
  align-items: center;
  justify-content: center;
}

.others-empty > span{
  width:100%;
  height: 100%;
  font-size:1.5em;
  font-weight: 700;
  font-family: 'alte_din_1451_mittelschriftRg';
  display: flex;
  align-items: center;
  justify-content: center;
}

.others-empty{
  width:100%;
  height: 100%;
}

#container-race-podium{
	background-color: #0b0f19;
	max-height: 340px;
	min-height: 280px;
	padding: 0;
	position: relative;
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

/* Live Track Radar */
#track-radar-container {
  width: 100%;
  height: 100%;
  min-height: 270px;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  padding: 10px 14px;
  position: relative;
  background: radial-gradient(circle at 50% 50%, #111827 0%, #030712 100%);
  border-radius: 10px;
}

.radar-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  margin-bottom: 6px;
  z-index: 5;
}

.radar-title {
  display: flex;
  align-items: center;
  gap: 6px;
  font-family: 'Outfit', sans-serif;
  font-weight: 700;
  font-size: 0.95em;
  color: #38bdf8;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.radar-icon {
  font-size: 18px;
  color: #38bdf8;
  animation: radarRotate 4s linear infinite;
}

@keyframes radarRotate {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

.radar-controls {
  display: flex;
  align-items: center;
  gap: 8px;
}

.radar-live-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 0.72em;
  font-weight: 800;
  color: #ef4444;
  background: rgba(239, 68, 68, 0.15);
  border: 1px solid rgba(239, 68, 68, 0.4);
  padding: 2px 7px;
  border-radius: 12px;
  font-family: 'Share Tech Mono', monospace;
}

.pulse-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #ef4444;
  box-shadow: 0 0 6px #ef4444;
  animation: liveDotPulse 1.2s infinite;
}

@keyframes liveDotPulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.4; transform: scale(0.75); }
}

#podium-view-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.btn-toggle-view-action {
  background: rgba(30, 41, 59, 0.85);
  border: 1px solid rgba(56, 189, 248, 0.4);
  color: #38bdf8;
  width: 28px;
  height: 28px;
  border-radius: 7px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
  transition: all 0.2s ease;
  vertical-align: middle;
}

.btn-toggle-view-action:hover {
  background: #0284c7;
  border-color: #38bdf8;
  color: #ffffff;
  transform: scale(1.08);
  box-shadow: 0 0 10px rgba(56, 189, 248, 0.5);
}

.btn-toggle-view-action .material-symbols-outlined {
  font-size: 18px;
}

#podium-toggle-btn {
  position: absolute;
  top: 6px;
  right: 6px;
  z-index: 20;
}

.radar-map-wrapper {
  flex: 1;
  width: 100%;
  height: calc(100% - 30px);
  min-height: 210px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

#track-radar-svg {
  width: 100%;
  height: 100%;
  max-height: 230px;
  overflow: visible;
  filter: drop-shadow(0 0 12px rgba(56, 189, 248, 0.15));
}

.radar-track-base {
  fill: none;
  stroke: rgba(255, 255, 255, 0.12);
  stroke-width: 14;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.radar-track-active {
  fill: none;
  stroke: #0284c7;
  stroke-width: 5;
  stroke-linecap: round;
  stroke-linejoin: round;
  filter: drop-shadow(0 0 5px #38bdf8);
}

.radar-car-item {
  cursor: pointer;
  transition: transform 0.05s ease-out;
}

.radar-car-circle {
  transition: r 0.15s ease, stroke-width 0.15s ease;
  stroke: #000;
  stroke-width: 1.5;
}

.radar-car-item.is-leader .radar-car-circle {
  stroke: #fbbf24;
  stroke-width: 2;
  filter: drop-shadow(0 0 6px #fbbf24);
}

.radar-car-item.is-hovered .radar-car-circle {
  r: 9 !important;
  stroke: #fff;
  stroke-width: 2.5;
  filter: drop-shadow(0 0 8px #38bdf8);
}

.radar-car-text {
  font-family: 'Share Tech Mono', monospace;
  font-size: 8px;
  font-weight: 900;
  fill: #ffffff;
  text-anchor: middle;
  dominant-baseline: central;
  pointer-events: none;
  text-shadow: 0 0 2px #000;
}

.radar-car-item.is-out {
  opacity: 0.3;
}

.radar-sc-pulse {
  fill: rgba(234, 179, 8, 0.3);
  animation: scPulse 1s infinite;
}

@keyframes scPulse {
  0% { r: 6; opacity: 0.8; }
  100% { r: 12; opacity: 0; }
}

.radar-sc-dot {
  fill: #eab308;
  stroke: #000;
  stroke-width: 1.5;
}

.radar-sc-label {
  font-family: 'Share Tech Mono', monospace;
  font-size: 7px;
  font-weight: 900;
  fill: #000;
  text-anchor: middle;
  dominant-baseline: central;
}

.radar-tooltip {
  position: absolute;
  display: none;
  background: rgba(15, 23, 42, 0.95);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border: 1px solid rgba(56, 189, 248, 0.4);
  border-radius: 6px;
  padding: 6px 10px;
  font-size: 0.8em;
  color: #fff;
  pointer-events: none;
  z-index: 100;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.6);
  white-space: nowrap;
  font-family: 'Montserrat', sans-serif;
}

.radar-tooltip-pos {
  display: inline-block;
  background: #fbbf24;
  color: #111;
  font-weight: 900;
  font-family: 'Share Tech Mono', monospace;
  padding: 1px 4px;
  border-radius: 3px;
  margin-right: 5px;
}

.radar-tooltip-name {
  font-weight: 700;
  color: #f8fafc;
}

.radar-tooltip-team {
  font-size: 0.85em;
  color: #94a3b8;
  margin-top: 2px;
}

.radar-tooltip-gap {
  font-size: 0.85em;
  color: #38bdf8;
  margin-top: 2px;
  font-family: 'Share Tech Mono', monospace;
}

#main-sponsor {
    /* width: 300px; */
    height: 230px; 
    /* background-color:red; */
    background: var(--urlSponsor) no-repeat;
    background-size: contain;
	background-position:center;
}

#podium-container{
	display:flex;
	flex-direction:row;
	overflow-y:hidden;
}

.racer-podium{
	width:33.3%;
	background-color:black;
	height: 240px;
	display: flex;
	flex-direction:column;
	align-items:center;
}

.third-place, .second-place{
margin-top:40px;
}

.first-place {
margin-top:15px;
}

#raceNameBar{
	height:60px;
	width:100%;
	background-color:black;
	display:flex;
	justify-content:center;
}

.podium-picture{
	width:40%;
	
}

.podium-picture img{
	width:100%;
	height:auto;
	max-height:100%;
}

.podium-flag{
	height:50px;
}

.podium-flag img{
	height:100%;
	border:gray 0.5px solid;
}

.podium-name{
	color:yellow;
	font-family: 'alte_din_1451_mittelschriftRg';
	margin-top:5px;
}

.podium-name::before{
	background-color:yellow;
	color:black;
	padding: 0 6px;
	margin-right: 3px;
}

.first-place .podium-name::before{
	content: "1";
}

.second-place .podium-name::before{
	content: "2";
}

.third-place .podium-name::before{
	content: "3";
}

.podium-team{
	color:white;
	font-family: 'alte_din_1451_mittelschriftRg';
	font-size:0.8em;
	font-weight:normal;
	margin-bottom:5px;
}

#competitionLogo{
	height:100%;
}

#raceLogo{
	font-family:krunchbold;
	color:white;
	word-break: normal;
	font-size:1.3em;
	width: 230px;
	margin-left:40px;
	display:flex;
	align-items:center;
}

#competition-big-logo{
	padding:40px;
	max-height:80%;
	max-width:100%;
}

#resim{
	width:100px;
	padding:5px;
	border-radius:5px;
	margin:5px;
}

#bck_lap, #fwd_lap, #replay-race, #replay-play, #replay-restart{
	width: 38px;
	height: 38px;
	padding: 0;
	border-radius: 8px;
	margin: 0 4px;
	background: rgba(30, 41, 59, 0.9);
	border: 1px solid rgba(56, 189, 248, 0.4);
	color: #38bdf8;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: all 0.2s ease;
	vertical-align: middle;
}

#bck_lap:hover, #fwd_lap:hover, #replay-race:hover, #replay-play:hover, #replay-restart:hover{
	background: #0284c7;
	border-color: #38bdf8;
	color: #ffffff;
	transform: scale(1.08);
	box-shadow: 0 0 10px rgba(56, 189, 248, 0.4);
}

#replay-speed{
	height: 38px;
	padding: 0 10px;
	border-radius: 8px;
	margin: 0 4px;
	background: rgba(30, 41, 59, 0.9);
	border: 1px solid rgba(56, 189, 248, 0.4);
	color: #38bdf8;
	font-weight: bold;
	font-family: 'Share Tech Mono', monospace;
	cursor: pointer;
	vertical-align: middle;
	outline: none;
}

#circuit-selection, #competition-selection, #race-scheduled-date, #race-scheduled-time {
	padding:5px;
	border-radius:5px;
	margin:5px;
	background-color:black;
	color:white;
}

#competition-selection, #circuit-selection{
	max-width:150px;
}

#race-scheduled-date,  #race-scheduled-time
{
	min-width:150px;
}

::-webkit-calendar-picker-indicator {
	cursor:pointer;
	background-color:white;
	color:orange;
}

#raceNameBar::after{
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: black;
	top: 0;
	left: 0;
	bottom: 0;
	transform: scale(1);
	transition: transform linear 1.5s;
	transform-origin: bottom;

}

#raceNameBar{
	position: relative;
}

#raceNameBar.animated::after {
	transform: scaleY(0);
}

.racer-podium::after{
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: black;
	top: 0;
	left: 0;
	bottom: 0;
	transition: transform linear 5s 2s;
	transform-origin: left;
}

.second-place::after{
	transition: transform linear 5s 4s;
}

.third-place::after{
	transition: transform linear 5s 6s;
}

.racer-podium{
	position: relative;
}

.racer-podium.animate::after {
	transform: scaleX(0);
}

#botaoPaginaTeste{
	border-radius:5px;
	background-color: yellow;
	color:black;
	font-size:90%;
	width: 120px;
	padding:5px;
	margin:5px;
	border:dashed 3px black;
}

#botaoPaginaStressTest{
	border-radius:5px;
	background-color: red;
	color:black;
	font-size:90%;
	width: 120px;
	padding:5px;
	margin:5px;
	border:dotted 2px black;
}


.triangle-up {
	width: 20px;
    height: 20px;
    background: conic-gradient(at 50% 10%,transparent 135deg,lightgreen 0,lightgreen 225deg, transparent 0);
	text-align:center;
	color:darkgreen;
	font-weight:bold;
	vertical-align: bottom;
}


.triangle-down {
	width: 20px;
    height: 20px;
    background: conic-gradient(at 50% 90%,red 45deg,transparent 0, transparent 315deg, red 0);
	text-align:center;
	color:darkred;
	font-weight:bold;
	vertical-align: top;
}

.no-show{
	color:transparent;
}