/* julius-sans-one-regular - latin */
@font-face {
   font-family: "Antonio";
   font-style: normal;
   font-weight: 400;
   src: url("../css/fonts/antonio.ttf") format("truetype");
}

/* roboto-regular - latin */
@font-face {
   font-family: "Roboto";
   font-style: normal;
   font-weight: 400;
   src: local(""), url("../css/fonts/roboto.woff2") format("woff2"), /* Chrome 26+, Opera 23+, Firefox 39+ */ url("../css/fonts/roboto.woff") format("woff"); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* raleway-regular - latin */
@font-face {
   font-family: "Raleway";
   font-style: normal;
   font-weight: 400;
   src: local(""), url("../css/fonts/raleway.woff2") format("woff2"), /* Chrome 26+, Opera 23+, Firefox 39+ */ url("../css/fonts/raleway.woff") format("woff"); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/*
FONTS
font-family: 'julius', sans-serif;
*/

html,
body {
   margin: 0;
   padding: 0;
   padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);
   width: 100%;

   display: flex;
   flex-direction: column;
   height: 100vh;

   font-family: "Antonio", "Arial", sans-serif;
   font-size: 17px;
   text-transform: uppercase;
   color: #111;

   background-color: #ddd;
   
   -ms-overflow-style: -ms-autohiding-scrollbar;
   box-sizing: border-box;
   overflow: hidden;
}

* {
   box-sizing: border-box;
}

header {
   width: 100%;
   background: black;
   text-transform: uppercase;
   z-index: 8;
   padding: 8px;

   display: flex;
   align-items: center;
}

header .lens {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   background-image: linear-gradient(#bbb, #eee);
   border-radius: 50px;
   xborder-top: 1px solid white;
   padding: 3px 10px;
   margin-right: 10px;
   height: 23px;
   font-size: 80%;
   font-weight: bold;
   color: black;
}

header .lensRed {
   color: white;
   font-weight: bold;
   background-image: linear-gradient(#a00, #e22);
   border-top: 1px solid #e22;
}

header .lensBtn {
   width: 26px;
   padding: 3px;
   text-align: center;
}
.lensBtn img {
   width: 18px;
}

h3 {
   text-transform: uppercase;
   margin: 3px 0;
}

a {
   color: #6a9e03;
   text-decoration: none;
}
.disabled {
   opacity: 0.5 !important;
}

input,
select {
   width: 100%;
}

input[type="file"] {
   opacity: 0;
   z-index: -1;
   position: absolute;
   top: -1px;
   left: 0;
   width: 0.1px;
   height: 0.1px;
}

table {
   width: 100%;
}
th {
   text-align: left;
   padding-right: 8px;
}
td {
   padding-right: 5px;
}
td.spacer {
   min-width: 20px;
}

img {
   max-width: 100%;
}

.imgBorder,
.border {
   border: 2px solid white;
   border-radius: 5px;
}

/* toggle switch */
.switch {
   position: relative;
   display: inline-block;
   width: 60px;
   height: 34px;
}

.switch input {
   opacity: 0;
   width: 0;
   height: 0;
}

.slider {
   position: absolute;
   cursor: pointer;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   background-color: #ccc;
   -webkit-transition: 0.4s;
   transition: 0.4s;
}

.slider:before {
   position: absolute;
   content: "";
   height: 26px;
   width: 26px;
   left: 4px;
   bottom: 4px;
   background-color: white;
   -webkit-transition: 0.4s;
   transition: 0.4s;
}

input:checked + .slider {
   background-color: #2196f3;
}

input:focus + .slider {
   box-shadow: 0 0 1px #2196f3;
}

input:checked + .slider:before {
   -webkit-transform: translateX(26px);
   -ms-transform: translateX(26px);
   transform: translateX(26px);
}

section {
   position: relative;
   padding: 20px 4% 4% 4%;
   width: 100vw;
   max-width: 800px;
   margin:  0 auto;
   height: 100vh;
   overflow-y: scroll;

   background-image: url(../images/wallpaper_01.png);
   background-size: cover;
   background-attachment: fixed;

}
/*
section.editShow {
    overflow: hidden;
    height: calc(100vh - 70px - 50px);  header - footer - buttons
}*/

.wrapper {
   height: 100%;
   overflow: hidden;
}

.scrollBox {
   height: 100%;
   overflow: hidden scroll;
   margin-right: -15px;
   padding-right: 15px;
   padding-bottom: 13px;
}

h2.side {
   font-size: 20px;
   text-transform: uppercase;
   text-align: center;
}

.mainBox {
   padding: 15px;
   margin-bottom: 12px;
   border-radius: 15px;
   border: 2px solid white;
   background: rgba(0, 0, 0, 0.3);
   box-shadow: 0 3px 6px rgba(0, 0, 0, 0.8);
}

.mainBox > h4,
h4.title {
   background: radial-gradient(circle, rgba(166, 166, 166, 1) 0%, rgba(133, 133, 133, 1) 100%);
   border-top-left-radius: 14px;
   border-top-right-radius: 14px;
   margin: -15px -15px 0 -15px;
   font-size: 90%;
   text-shadow: 0 1px 0.5px rgba(255, 255, 255, 0.5);
   text-transform: uppercase;
   text-align: center;
   letter-spacing: 0.25px;
   padding: 5px;
   color: #111;
}

.mainBox > h4 + div,
.mainBox > h4 + table {
   padding-top: 13px;
}

.mainBox > h4 + table {
   margin-top: 13px;
}

.mainBox > h4 + .btn {
   margin-top: 13px;
}

.mainBox .mainBox {
   xborder: none;
}

.mainBox .mainBox > h3 {
   font-size: 85%;
   margin-top: -8px;
}

.cover {
   width: 100%;
}

table.title {
   border-radius: 15px;
   border: 2px solid white;
   background: rgba(0, 0, 0, 0.3);
   margin-bottom: 15px;
}
table.title thead {
   background: radial-gradient(circle, rgba(166, 166, 166, 1) 0%, rgba(133, 133, 133, 1) 100%);
   font-weight: bold;
   text-align: center;
   color: #111;
}
table.title th {
   text-align: center;
}

.imgTitle {
   display: block;
   max-width: 75%;
   margin: 5px auto;
}

.main {
   /*    width: calc(100vw - 70px);
        margin-left: 50px*/
}

.blog h2 {
   border-bottom: 2px solid white;
   margin: 5px 0;
   padding: 5px 0;
}

#version {
   font-family: "Courier", serif;
   float: right;
   font-size: 10px;
   color: white;
   margin: 20px;
   text-shadow: none;
   font-weight: normal;
}

#msg,
.msg {
   position: fixed;
   top: 39px;
   left: 0px;
   right: 0px;
   text-align: center;
   z-index: 8;
   background: #377cdf;
   box-shadow: 0 6px 10px rgba(10, 20, 40, 0.5);
   color: white;
   padding: 2.5%;
   xborder: 5px solid white

}

#msg p {
   width: 90%;
   margin: 0.5em auto;
}

#boxLogin .msg {
   top: auto;
}

.closer {
   position: absolute;
   right: 5px;
   top: 5px;
   font-size: 22px;
   font-weight: bold;
   z-index: 9;
}

.popup .closer {
   right: 25px;
   top: 16px;
}

.popup {
   position: fixed;
   left: 0%;
   right: 0%;
   top: 0px;
   bottom: 0px;
   z-index: 8;
   background: rgba(0, 0, 0, 0.4);
   backdrop-filter: blur(5px);
   -webkit-backdrop-filter: blur(5px);
   color: #eee;
   padding: 3% 3%;
   overflow-y: scroll;
}

#boxSplash {
   position: fixed;
   left: 0%;
   right: 0%;
   top: 0px;
   bottom: 0px;
   z-index: 9;
   background-color: black;
   background-image: url(../images/sd/splash_bg.jpg);
   background-size: 100% auto;
   background-repeat: no-repeat
}

#boxSplash img {
   /* center img vertically */
   position: absolute;
   width: 90%;
   top: 46%;
   left: 50%;
   transform: translate(-50%, -50%);
}

#boxSplash .legal {
   background: black;
   position: absolute;
   bottom: 0px;
   left: 10px; 
   right: 10px;
   font-size: 80%;
   text-align: justify;
   padding: 20px;
   color: white;
}


h2 {
   margin: 0;
}

label {
   display: inline-block;
   font-size: 16px;
   font-weight: bold;
   text-transform: uppercase;
   opacity: 0.85;
   color: rgba(255, 255, 255, 0.95);
   padding: 3px 6px;
   margin: 6px 0;
}

footer {
   width: 100%;
   background: linear-gradient(0deg, rgb(0, 0, 0), rgb(50, 50, 50));
   box-shadow: 0 -3px 5px rgba(0, 0, 0, 0.5);
}

#boxBottomMenu {
   display: grid;
   grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
}
#boxBottomMenu div {
   font-size: 80%;
   text-transform: uppercase;
   line-height: 74px;
   /* fix height in android
    display: flex; 
        align-items: flex-end;  Align content to the bottom of the grid item 
        justify-content: center;
    */
   height: 65px;
   padding: 10px;
   text-align: center;
   color: rgba(255, 255, 255, 0.9);
   xborder-right: 1px solid black;
   xborder-left: 1px solid rgba(255, 255, 255, 0.3);
   cursor: pointer;
   background-size: auto 65%;
   background-position: center 7px;
   background-repeat: no-repeat;
   opacity: 0.6;
}

#boxBottomMenu div[data-com="office"] {
   background-image: url(../images/8003.png);
}
#boxBottomMenu div[data-com="roster"] {
   background-image: url(../images/8004.png);
}
#boxBottomMenu div[data-com="show"] {
   background-image: url(../images/8005.png);
}
#boxBottomMenu div[data-com="calendar"] {
   background-image: url(../images/8006.png);
}
#boxBottomMenu div[data-com="stats"] {
   background-image: url(../images/8007.png);
}

#boxBottomMenu div.active {
   background-position: center 3px;
   background-size: auto 80%;
   box-shadow: none;
   opacity: 1;
}

#bottomMenu img {
   height: 100%;
   opacity: 0.7;
}

#bottomMenu li.active img {
   opacity: 1;
}

#boxBottomMenu div.disabled {
   opacity: 0.2 !important;
}

#debug {
   position: absolute;
   padding: 10px;
   top: 50%;
   color: rgba(255, 255, 255, 0.8);
   background: rgba(50, 100, 50, 0.8);
   z-index: 99;
}

#canvasSmoke {
   width: 100vw;
   height: 100vh;
   position: fixed;
   left: 0;
   right: 0;
   top: 0;
   bottom: 0;
   z-index: 2;
   background: black;
}

#start {
   padding-top: 30%;
}

.intro {
   padding-top: 70px;
}

#popup.start {
   background-color: black;
   background-image: url(../images/sd/buttons/btn_sq_r_blue.png);
   background-position: center bottom;
   background-size: 100% auto;
   background-repeat: no-repeat;
}

#boxLogo {
   height: 30vh;
   margin: 20px auto 0 auto;
   background-image: url(../images/sd/logo2024.png);
   background-size: contain;
   background-position: center;
   background-repeat: no-repeat;
}


.boxRisk {
   text-align: center !important;
}
.boxRisk {
   font-size: 85%;
}

/* static star view with 91pixels width */

/* static star view with 91pixels width */
.boxStarRating,
.starRatingActive {
   position: relative;
   width: 91px; /* if not scalable see heleprsWrestling getStars */
   height: 15px; /* if not scalable */
   background-image: url(../images/sd/stars0.png);
   background-position: top left;
   background-size: 91px auto;
   background-repeat: no-repeat;
}

.boxStarRating.scalable {
   width: 100%;
   height: auto;
   aspect-ratio: 91/15;
   background-size: 100% auto;
}
.boxStarRating.scalable .starRatingActive {
   height: auto;
}

.starRatingActive {
   position: absolute;
   top: 0;
   left: 0;
   bottom: 0;
   background-image: url(../images/sd/starsWhite.png);
   xbackground-size: 100%;
   z-index: 1;
}

.stars {
   font-size: 1.6em;
   text-align: center;
   padding: 5px 15px;
}
.stars img {
   height: 15px;
   padding-right: 3px;
}

.stars1,
.starsBlack {
   background-image: url(../images/sd/stars1.png) !important;
}


.stars2,
.starsYell {
   background-image: url(../images/sd/stars2.png) !important;
}

.stars3,
.starsRed {
   background-image: url(../images/sd/stars3.png) !important;
}

.big .boxStarRating,
.big .starRatingActive {
   width: 159px;
   height: 25px;
   margin: auto;
   background-size: 159px 25px;
}

.boxCurrentShow .starRatingActive {
   background-image: url(../images/sd/stars2.png); /* yellow stars on final result */
}

.feudDetail .boxStarRating,
.feudList .boxStarRating {
   margin: 10px auto;
}

.feudList .wrestler .imgBox {
   width: 90px;
   height: 90px;
}

.boxFeudDuration .weeks {
   font-size: 120%;
}

/* OFFICE */

.boxWrestler,
.boxWrestlers {
   color: white;
   position: relative;
}

.wrestlerCard {
   max-width: 160px;
   margin: 0 auto;
}

.wrestlerCard h3 {
   font-size: 1.05em;
}

.wrestler .imgBox {
   position: absolute;
   right: 0;
   top: 0;
   bottom: 0;
   aspect-ratio: 1/1;
}

/* .wrestler .imgBox.teamSize1 {
   height: 100px;
   width: 100px;
} */

#list > h3,
#listTeams > h3 {
   padding: 20px;
}

.wrestler .popularity,
.team .popularity {
   font-family: Courier, monospace;
   position: absolute;
   right: 10px;
   top: 12px;
   font-size: 140%;
   font-weight: bold;
   text-shadow: none;
   z-index: 4;

   border-radius: 50px;
   padding: 3px 13px 2px 13px;
   color: #333;
   background: #eee;
}

.HEEL .popularity {
   color: white;
   background: #e63320;
}
.FACE .popularity {
   color: white;
   background: #377cdf;
}

.wrestler.HEEL {
   background-image: url(../images/sd/buttons/btn_ra_r_red.png);
}

.wrestler.FACE {
   background-image: url(../images/sd/buttons/btn_ra_r_face.png);
}

.wrestler .wrestlerStats {
   padding: 7px 20px 10px 12px;
}

.btnWrestler {
   display: inline-block;
   padding: 3px 10px 3px 45px;
   margin: -8px 10px 0 0;
   background-color: rgba(200, 200, 200, 0.8);
   border-radius: 5px;
   font-weight: bold;
   color: #111;
   background-size: contain;
   background-repeat: no-repeat;
}

.btnTeamDelete,
.btnNoIcon {
   padding: 3px 12px 3px 12px;
   margin-left: -10px !important;
}

.btnInjured {
   background-image: url(../images/sd/buttons/img_injury.png);
}

.btnContract {
   background-image: url(../images/sd/buttons/img_contract.png);
}

.wrestler .imgBox div {
   position: absolute;
}

/* teams */

.wrestler [data-lang="charisma"] {
   width: 60px;
   overflow: hidden;
}

.wrestler h3 {
   /* name, surname !?*/
   margin: 0;
   font-size: 1.12em;
}

.wrestler h4 {
   margin: 8px 0 2px 0;
}

.wrestler .nick {
   font-size: 95%;
   margin: 2px 0 !important;
   font-weight: normal;
   opacity: 0.7;
}

.imgWrestler {
   position: absolute;
   left: 0;
   bottom: 0;
   width: 90%;
   aspect-ratio: 1/1;
   z-index: 3;
}

.wrestler .imgBelt {
   position: absolute;
   bottom: -12px;
   width: 80%;
   left: 10%;
   z-index: 4;
}

.boxCurrentInner .imgBelt {
   width: 90%;
   left: 5%;
}

#listTeams .imgBelt {
   left: 10%;
   max-width: 80%;
   bottom: -20px;
}

.wrestler.winner {
   color: #f4eb49 !important;
}

.wrestler.winner .imgBox {
   border: 1px solid #f4eb49 !important;
}

.team.winner {
   border: 6px solid #f4eb49 !important;
}

.txtWinner {
   width: 100%;
   text-align: center;
   padding-top: 32px;
   z-index: 4;
   text-shadow: 0 0 3px rgba(0, 0, 0, 1), 0 0 10px rgba(0, 0, 0, 1), 0 0 15px rgba(0, 0, 0, 1), 0 0 20px rgba(0, 0, 0, 1), 0 0 30px rgba(0, 0, 0, 1);
}

.editShow .wrestler.hideWinnerBeforeShow.winner,
.eventSummary .wrestler.hideWinnerBeforeShow.winner {
   color: white !important;
}

.listTitles .img {
   width: 90%;
}

/*.injured .imgWrestler {
    filter: grayscale(0.9);
    opacity: 0.6;
}*/

.btnShop h3,
.btnShop h4 {
   margin: 2px 0;
}

.boxImgArc {
   padding: 5px;
   background: rgba(0, 0, 0, 0.8);
   border: 2px solid rgba(0, 0, 0, 0.8);
}

.boxImgArc.active {
   border: 2px solid white;
}

/* team list */
#listTeams h3 {
   margin: 0 0 4px 0;
}

.boxTeams .wrestler {
   border: none;
}

.boxImgWrestlers {
   position: absolute;
   right: 10px;
   bottom: 0;
   width: 50%;
   aspect-ratio: 1/1;
}

.boxImgWrestlers img {
   position: absolute;
   bottom: 0px;
   xwidth: 78px;
   z-index: 3;
}

.grid3.boxTeams {
   zoom: 80%;
}
.grid4.boxTeams {
   zoom: 70%;
}
.grid4.boxTeams .imgWrestler {
   xxxleft: 15 !important;
}

.teamSize2 img {
   width: 70%;
}

.teamSize2 img:nth-child(1) {
   left: 0;
   right: auto;
}

.teamSize2 img:nth-child(2) {
   right: -10px;
   left: auto;
}

.imgBox.teamSize1 .imgWrestler,
.boxChoseWrestlers .imgWrestler {
   xleft: 50%;
   xmargin-left: -50px;
   left: 0;
}

.grid3 .imgBox.teamSize1 .imgWrestler,
.grid4 .imgBox.teamSize1 .imgWrestler {
   left: 50% !important;
   margin-left: -39px; /* width 78px */
}

.imgBox.teamSize3 .imgWrestler,
.imgBox.teamSize4 .imgWrestler {
   width: 50%;
}

.imgBox.teamSize3 .imgWrestler:nth-child(1),
.imgBox.teamSize4 .imgWrestler:nth-child(1) {
   left: -30px;
}

.imgBox.teamSize3 .imgWrestler:nth-child(2) {
   left: 30px;
}
.imgBox.teamSize3 .imgWrestler:nth-child(3),
.imgBox.teamSize3 .imgWrestler:nth-child(4) {
   right: -10px;
}

.imgBox.teamSize4 .imgWrestler:nth-child(2) {
   left: 20px;
}
.imgBox.teamSize4 .imgWrestler:nth-child(3) {
   right: 20px;
}

.boxRivals .portrait {
   display: inline-block;
   margin-right: 8px;
   width: 50px;
   height: 50px;
}

/* team detail */
.teamItem {
}
#boxTeamDetail imgBox {
   height: 95px;
}

.teamItem .name {
   margin: 4px 0;
}

.btnArrow {
   height: 40px;
}

/* ----------- template wrestler ------------------------ */

/* hide button boxes based on com / view */
.wrestlerBtnBox {
   display: none;
   padding: 0 20px;
} /* default: hide all boxes */

.wrestlerBtnBox h3 {
   padding: 3px 0;
}

.wrestlerBtnBox a {
   max-width: 60% !important;
   margin: 5px auto;
}

/* show btnBox based on view */
.superstars .boxDetail,
.officeBuyStar .boxBuy,
.officeSellStar .boxSell,
.officeTeamList .boxButtonsOffice,
.roster .boxButtonsRoster,
.starsList .boxEdit,
.buy .boxBuy,
.sell .boxSell,
.roster .boxButtonsRoster,
.show .boxButtonsMatch {
   display: block !important;
}

/* ----------- roster ------------------------ */

.list > div,
#listWrestler .wrestler,
#listTeams .wrestler,
#tile .wrestler {
   position: relative;
   xheight: 200px;
   color: white;
   /* rost and popup list view */
   background-color: black;
   background-size: cover;
   background-repeat: no-repeat;
   background-position: center bottom;
   margin-bottom: 16px;
   box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
   aspect-ratio: 2/0.95;
}

#listTeams .boxImgWrestlers img {
   width: 60%;
}

.list > div:last-child,
#listWrestler .wrestler:last-child,
#listTeams .wrestler.wrestler:last-child {
   border: none;
}

.btnImg {
   padding: 12px 14px !important;
   font-size: 1.1em;
   max-width: 95% !important;
}
.btnImg > div {
   line-height: 40px;
}
.btnImg img {
   margin-top: -20px;
   margin-bottom: -22px;
   height: 60px;
   width: auto;
}

.rosterLinks img {
   margin-left: -20px;
}
.rosterImgFaction img {
   height: 55px;
   margin-left: -30px;
}

.rosterImgFeud {
   background-image: url(../images/sd/bgFeudStars.png);
   background-size: contain;
   background-position: center;
   background-repeat: no-repeat;
}

#listWrestler {
   /*    height: calc(100vh - 120px - 65px);
        overflow: hidden scroll;*/
}

#popup #listWrestler {
   height: 95vh;
}

.roster .stats {
   margin-top: 10px;
}

.roster .stats td {
   font-size: 85%;
   font-weight: normal;
   border-bottom: 1px solid white;
}

.roster .stats tr:last-child td {
   border: none;
}

.trBtn {
   background-repeat: no-repeat;
   background-size: contain;
   width: 30px;
   height: 30px;
}
.trBtnMinus,
.trBtnPlus {
   padding: 8px;
   border-radius: 50px;
   background-color: #eee;
   border: 2px solid white;
   font-weight: bold;
   display: inline-block;
   width: 30px;
   height: 30px;
   line-height: 30px;
   text-align: center;
   font-size: 30px;
   position: relative;
}

.trBtnMinus::before,
.trBtnPlus::before {
   content: "-";
   position: absolute;
   top: 50%;
   left: 50%;

   transform: translate(-50%, -62%); /* Center the minus sign */
}

.trBtnPlus::before {
   content: "+";
}

/* ----------- show ------------------------ */

#show_overview {
   margin-bottom: 20px;
}

#com.editShow {
   overflow: hidden;
}

.editShow .price {
   font-size: 100%;
   opacity: 1;
}

table.btnSelectArena {
   border-collapse: separate;
}

.editShow .imgShow img {
   max-height: 68px;
   max-width: 155px;
}

.editShow .imgBox {
   display: none;
}

.editShow .wrestler {
   padding: 0;
}

.editShow .boxStarRating {
   opacity: 0;
}

.boxCurrentInner .imgShow {
   position: absolute;
   left: 10%;
   width: 80%;
}

/* in show but also in tile */
.showPromoWrestler {
   position: absolute;
   bottom: 0;
   max-width: 50%;

   z-index: 3;
}

.tileFull .event {
   left: 50%;
}



/* general /  2 vs 2 vs */
.showPromoWrestler:nth-child(1) {
   left: 0%;
   right: auto;
   z-index: 2;
}
.showPromoWrestler:nth-child(2) {
   left: 14%;
   right: auto;
}
.showPromoWrestler:nth-child(3) {
   right: 14%;
   left: auto;
}
.showPromoWrestler:nth-child(4) {
   right: 0%;
   left: auto;
   z-index: 2;
}

/* 1vs 1*/

.numTeams2 .showPromoWrestler:nth-child(1) {
   left: 10%;
   right: auto;
}
.numTeams2 .showPromoWrestler:nth-child(2) {
   right: 10%;
   left: auto;
}

/* 2vs 2 */
.teamsize2.numTeams2 .showPromoWrestler:nth-child(1) {
   right: auto;
   left: 0%;
}
.teamsize2.numTeams2 .showPromoWrestler:nth-child(2) {
   right: auto;
   left: 14%;
}

/* 1vs 1 vs 1 */
.numTeams3 .showPromoWrestler:nth-child(2) {
   left: 15%;
   right: auto;
}

/* 4vs 4*/
.numTeams2.teamsize3 .showPromoWrestler:nth-child(1),
.numTeams2.teamsize4 .showPromoWrestler:nth-child(1) {
   left: 0%;
   right: auto;
}
.numTeams2.teamsize3 .showPromoWrestler:nth-child(2),
.numTeams2.teamsize4 .showPromoWrestler:nth-child(2) {
   left: 14%;
   right: auto;
}

.numTeams2.teamsize3 .showPromoWrestler:nth-child(3),
.numTeams2.teamsize4 .showPromoWrestler:nth-child(3) {
   right: 0%;
   left: auto;
}
.numTeams2.teamsize3 .showPromoWrestler:nth-child(4),
.numTeams2.teamsize4 .showPromoWrestler:nth-child(4) {
   right: 14%;
   left: auto;
}

/*
.teamsize1 .showPromoWrestler:nth-child(2) {
    right: 0%;
    left: auto;
}

.teamsize1 .showPromoWrestler:nth-child(3) {
    left: 17%;
    right: auto;
}

.teamsize1 .showPromoWrestler:nth-child(4) {
    right: 17%;
    left: auto;
}*/

.showPromoTitle {
   position: absolute;
   left: 30%;
   width: 40%;
   bottom: 20px;
   z-index: 1;
}

.screen a.btnSmall {
   max-width: 100%;
}

.eventCard {
   margin-bottom: 10px;
}

.eventCard .boxTeams div.wrestler:nth-child(2) .boxWrestlerNames,
.eventCard .boxTeams > div:nth-child(3) .boxWrestlerNames,
.eventCard .boxTeams div.wrestler:nth-child(6) .boxWrestlerNames {
   text-align: center;
}

.eventCard .boxTeams div.wrestler:last-child .imgBox {
   margin-left: auto;
   margin-right: 0;
}

/* overwrite last-child so single person apperanace does not get pulled right*/
.eventCard .boxTeams div.wrestler:first-child .imgBox {
   margin-left: 0;
   margin-right: auto;
}

.eventCard .boxTeams div.wrestler:last-child .boxWrestlerNames {
   text-align: right;
}

.eventCard .boxTeams div.wrestler:first-child .boxWrestlerNames,
.eventCard .boxTeams div.wrestler:nth-child(5) .boxWrestlerNames {
   text-align: left;
}

#show table.small {
   line-height: 1.1em;
}

.priceMatches {
   font-size: 100% !important;
}

.bar {
   position: relative;
   width: 100%;
   border: 1px solid crimson;
   border-radius: 3px;
}
.bar .fill {
   background: crimson;
   font-size: 80%;
   text-align: center;
   color: white;
   height: 20px;
}

.bar .text {
   position: absolute;
   top: 2px;
   width: 100%;
   text-align: center;
}

.boxBarDuration.greenBar {
   border: 1px solid white;
}

.boxBarDuration.greenBar .fill {
   background: green;
}

/* .explain,
.info,
.priceTag {
   text-align: center;
   color: #333;
   font-size: 85%;
   margin: 20px 0;
   padding: 15px;
   border-radius: 15px;
   border: 2px solid white;
   background: radial-gradient(rgba(255, 255, 255, 1) 50%, rgba(211, 211, 211, 1) 100%);
   box-shadow: 0 4px 5px rgba(255, 255, 255, 0.2);
} */

.priceTag {
   font-size: 110%;
   font-weight: bold;
}

/*
.tippManImg {
    float: right;
    width: 80px;
    position: absolute;  Position the image absolutely within the div 
    bottom: 0;  Align the image to the bottom of the div 
    right: 0;  Align the image to the right edge of the div 
}

.tippMan {
    position: relative;
}*/

.boxAdd {
   max-width: 110px;
   aspect-ratio: 1/1;
   font-size: 300%;
   text-align: center;
   margin: 20px auto;
   padding: 20px;
   border-radius: 4px;
   line-height: 1;
}

.selected {
   border: 2px solid gold !important;
}

.event {
   text-transform: uppercase;
}

.matchIndicator,
.promoIndicator {
   font-weight: bold;
   font-size: 100%;
}

.matchIndicator div,
.promoIndicator div {
   display: inline-block;
   margin: 5px;
}

.matchIndicatorItemEmpty:after {
   content: "◯";
}

.matchIndicatorItemFull:after {
   content: "⬤";
}

.ratingStars img {
   height: 26px;
   margin-right: 5px;
}

.flashStars {
   animation: flashStars 1500ms;
   animation-iteration-count: 1;
}

@keyframes flashStars {
   0% {
      zoom: 1;
   }
   25% {
      zoom: 1.3;
   }
   50% {
      zoom: 0.9;
   }
   75% {
      zoom: 1.2;
   }
   100% {
      zoom: 1.05;
   }
}

/* ----------- calendar ------------------------ */

.tblCalendar {
   border-collapse: separate; /* needed for round edges*/
   border-spacing: 0;
}
.tblCalendar th {
   font-size: 85%;
   text-align: center;
   padding: 3px;
}
.tblCalendar th:first-child {
   border-top-left-radius: 12px;
}
.tblCalendar th:last-child {
   border-top-right-radius: 12px;
}

.tblCalendar td {
   padding: 3px;
   text-align: center;
}
.tblCalendar img {
   width: 95%;
   max-width: 60px;
   margin: 0 auto;
}

.tblCalendar img.disabled {
   filter: grayscale(1);
   opacity: 0.6;
}

.prevDate {
   text-align: left;
   padding-left: 15px;
}

.changeMonth,
.changeMonthStats {
   font-size: 150%;
}

/* ----------- stats ------------------------ */

.boxStats {
   xmin-height: 50vh;
}

.trVertricalBars td {
   position: relative;
   height: 40vh;
   vertical-align: top;
}

.trVertricalBars img {
   max-width: 70%;
}

.trVertricalBars .bar {
   text-align: center;
   font-weight: bold;
   line-height: 45px;
   position: absolute;
   width: 90%;
   left: 5%;
   bottom: 0;
   background: linear-gradient(0deg, #111, #999);
   border: 1px solid rgba(255, 255, 255, 0.5);
}

.trVertricalBars .logoBar {
   position: absolute;
   bottom: 0;
   left: 15%;
   width: 100%;
}

.trVertricalBars .bar:nth-child(1) {
}

/* ----------- login ------------------------ */

#boxLogin img {
   display: block;
   width: 80%;
   max-width: 300px;
   margin: 10px auto;
}

/* ----------- common ------------------------ */

select {
   display: block;
   width: 100%;
   margin: 0 auto 15px auto;
   padding: 8px;
   background-color: rgba(100, 83, 81, 0.8);
   border: none;
   font-size: 18px;
   color: white;
   box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);

   outline: none;
   -webkit-appearance: none;
}

select option {
   padding: 30px;
}

#boxButtons {
   position: absolute;
   left: 10px;
   top: 10px;
   width: 26px;
   height: 60px;
   z-index: 9;
}

.icon {
   display: block;
   font-size: 28px;
   color: rgba(100, 83, 81, 0.8);
   margin-bottom: 12px;
   opacity: 0.8;
   cursor: pointer;
}

.icon-minus,
.icon-plus {
   font-size: 20px;
}

.boxDesc {
   font-size: 85%;
}

hr {
   display: block;
   clear: both;
   margin: 30px;
   border: none;
   height: 2px;
   background: white;
}

hr.hand {
   width: 100%;
   height: 6px;
   background: none;
   background-image: url(../images/sd/line.png);
   background-repeat: no-repeat;
   background-size: cover;
   background-position-x: center;
}

input {
   font-size: 1.1em;
}
input.disabled {
   background: #ddd !important;
   border: none;
}

table {
   border-collapse: collapse;
}
table td {
   padding: 2px 0px;
}

table td:first-child {
   padding-right: 10px;
}

tr.rowResult td {
   border-top: 1px solid white;
   border-bottom: 1px double white;
   font-weight: normal;
}

.btn,
.box1,
.smallButtons a {
   cursor: pointer;
   text-transform: uppercase;
   font-weight: bold;
   display: block;
   padding: 8px 14px;
   text-align: center;
   min-width: 90px;
   max-width: 90%;
   margin: 10px auto;
   background: white;
   background: linear-gradient(#f3f3f3, #fdfdfd);
   color: #111;
   border: none;
   border-radius: 55px;
   box-shadow: 0 3px 5px rgba(0, 0, 0, 0.3);
}

.gap .btn,
.grid .btn,
.grid2 .btn,
.grid3 .btn,
.grid4 .btn {
   max-width: 100%;
}

a.active {
   background: white;
   background: radial-gradient(circle, rgba(255, 255, 255, 1) 0%, rgba(222, 222, 222, 1) 78%);
   color: #333;
}

.btnSmall,
.smallButtons a {
   font-size: 0.9em;
   padding: 6px 12px;
   margin: 5px auto;
}

.screen .btnSmall {
   margin: 8px auto;
}

.btnBig {
   font-size: 1.2em;
   padding: 9px 15px;
}

.btnFree,
.btnGreen {
   color: white;
   background: rgb(98, 156, 69);
   background: linear-gradient(rgba(53, 85, 38, 1), rgba(98, 156, 69, 1));
   border: none;
}

.btnBlue, .btnShowAd {
   background: rgb(0, 108, 136);
   color: white;
   
}

.btnShowAd {
   background: rgb(0, 108, 136);
   background-image: url(../images/sd/icon_video.png)!important;
   background-size: auto 60%;
   background-position: 20px center;
   background-repeat: no-repeat
}

/* jubeln / face selection with blue */
.btnGreen[data-value="FACE"] {
   color: white;
   background: #0e8ce6;
   border: 1px solid white;
}

[data-value="FACE"],
[data-value="HEEL"] {
   width: 100%;
}

.btnRed {
   color: white;
   background-color: rgb(150, 0, 0);
   background: linear-gradient(rgba(150, 0, 0, 1), rgba(250, 0, 0, 1));
}

.btnFree {
   color: white;
   background-color: rgb(0, 108, 136);
}

.btnBlack {
   color: silver;
   background-color: black;
}

.shopPrice,
.btnDeepBlue {
   margin-top: 30px;
   color: white;
   background: #0022ac!important;
}

.inactive {
   background: #666 !important;
   border: 1px solid #333 !important;
}

.btnDisabled {
   background-color: rgb(55, 55, 55);
   border: 1px solid rgb(55, 55, 55);
}

.box2 {
   border: 1px solid white;
   border-radius: 5px;
   background: rgba(0, 0, 0, 0.7);
}

.dark {

   padding: 25px; 
   background: black;
   /*    background-color: rgba(0,0,0, .6);
        padding: 10px;
        margin-bottom: 12px;
        border-radius: 5px;
        border: 1.5px solid black;*/
}

.darkBg {
   background: rgba(0, 0, 0, 0.5);
}

.rotateOut {
   animation: rotateOut 500ms;
   animation-fill-mode: forwards;
}

/*  common ----------------------------------------------------- */
.borderTop {
   border-top: 2px solid white;
   margin-top: 5px;
   padding-top: 5px;
}
.borderBottom {
   border-bottom: 2px solid white;
   margin-bottom: 15px;
   padding-bottom: 5px;
}

div.borderBottom:last-child {
   border: none;
}

.block {
   display: block;
}

.shadow {
   box-shadow: 0 3px 6px rgba(0, 0, 0, 0.8);
}
.textShadow {
   text-shadow: 0 2px 3px rgba(0, 0, 0, 0.4);
}

.debug {
   background: black; 
   color: lime;
   padding: 10px;
   font-family: 'Courier New', Courier, monospace;
   font-size: 90%;
   margin: 10px 0;
   text-transform: none;
}

.pad {
   padding: 4%;
}
.pad10 {
   padding: 10px;
}

.margin,
.margin5 {
   margin-bottom: 5px;
}

.margin10 {
   margin: 10px 0;
}

.gridEqual {
   display: grid;
   grid-template-columns: repeat(1fr);
   gap: 5px;
}

.grid {
   display: grid;
   grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
   gap: 10px;
}

.grid2 {
   display: grid;
   grid-template-columns: 1fr 1fr;
   align-items: start;
   align-content: stretch;
}

.grid3 {
   display: grid;
   grid-template-columns: 1fr 1fr 1fr;
}

.grid4 {
   display: grid;
   grid-template-columns: 1fr 1fr 1fr 1fr;
}

.grid5 {
   display: grid;
   grid-template-columns: repeat(5, 1fr);
}

.grid3 > div {
   xzoom: 0.9;
}

.grid2 > div,
.grid3 > div,
.grid4 > div,
.grid2 > a,
.grid3 > a,
.grid4 > a {
   width: 100%;
}

/* one column with horizontal divs filling 100% of (remaining) height */
.flexCol {
   display: flex;
   flex-direction: column;
   height: 100%;
}

.flex {
   display: flex;
   flex-wrap: nowrap;
}
.wrap {
   flex-wrap: wrap;
}

.flex > div {
   flex: 1 1 0;
}

.flex2 {
   flex: 2 1 0 !important;
}

.gap,
.gap10 {
   gap: 0 10px;
}

.killMargin * {
   margin: 0 !important;
}

.center {
   text-align: center !important;
}
.left {
   text-align: left;
}
.right {
   text-align: right;
}

.red {
   color: #b70f0a;
   text-shadow: 0 0 2px rgba(0, 0, 0, 0.6);
}

tr.red {
   text-shadow: none;
}

.price.red,
#tblFinancialResult .red {
   color: lightcoral;
}

.green {
   color: #3c3;
}
.white {
   color: white;
}

.big {
   font-size: 120%;
}
.bold,
.bold * {
   font-weight: bold;
}

.uppercase {
   text-transform: uppercase;
}

.small {
   font-size: 85%;
}

.tiny {
   font-size: 60%;
   opacity: 0.8;
}

.hidden {
   display: none !important;
}

.gradient {
   background: radial-gradient(circle, rgba(22, 22, 22, 1) 0%, rgba(66, 66, 66, 1) 78%);
}

.flip {
   transform: rotate(180deg);
}

.boxButtons {
   padding: 20px 0;
}

table.striped td {
   padding: 5px;
}

.striped tr:nth-child(odd) td {
   background: rgba(0, 0, 0, 0.1);
}
