html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}

:root {
    --bs-musta-rgb: 0, 0, 0;
    --bs-kaisakaaviogreen-rgb: 0, 130, 0;
    --bs-kaisakaavioblue-rgb: 40, 100, 190;
    --bs-kaisakaavioorange-rgb: 227, 160, 55;
    --bs-kaisakaaviored-rgb: 255, 0, 0;
    --bs-kaisakaaviolive-rgb: 110, 153, 222;
    --bs-kaisakaaviotulokset-rgb: 79, 161, 86;
    --bs-kaisakaavioilmo-rgb: 217, 150, 212;
    --bs-kaisakaaviosali-rgb: 179, 166, 122;
    --bs-kaisakaavioranking-rgb: 74, 158, 154;
    --bs-inforuutu-rgb: 100, 100, 100;
    --bs-punainen-rgb: 255, 0, 0;
    --bs-pelirivi-rgb: 210, 210, 210;
    --bs-pelirivikaynnissa-rgb: 255, 255, 255;
    --bs-pelirivityhja-rgb: 255, 255, 255;
    --bs-sijoituskommentti-rgb: 190, 190, 190;
    --bs-tuloksettausta-rgb: 233, 212, 167;
    --bs-biljardi-org-rgb: 180, 22, 111;
    --bs-kaisakaaviogradient: linear-gradient(180deg, rgba(0, 0, 0, 0.0), rgba(0, 0, 0, 0.8));
    --bs-kaisakaaviogradient-invert: linear-gradient(180deg, rgba(0, 0, 0, 1.0), rgba(0, 0, 0, 0.25));
    --bs-kaisakaaviogradient-yla: linear-gradient(270deg, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.5));
    --bs-kaisakaaviogradient-ala: linear-gradient(270deg, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.6));
    --bs-taustagradient: linear-gradient(180deg, rgba(0, 0, 0, 0.0), rgba(0, 0, 0, 0.4));
    --bs-topshade: linear-gradient(180deg, rgba(0, 0, 0, 1.0) 0%, rgba(0, 0, 0, 0.5) 70%, rgba(0, 0, 0, 0.0) 100%);
    --bs-otsikkogradient: linear-gradient(160deg, rgba(0.4, 0.4, 0.4, 0.7), rgba(0.2, 0.2, 0.2, 0.0));
    --bs-painikegradient: linear-gradient(180deg, rgba(0.4, 0.6, 1.0, 0.25), rgba(0.2, 0.3, 0.4, 0.1));
    --bs-ikkunagradient: linear-gradient(50deg, rgba(0.8, 0.8, 0.8, 0.2), rgba(0.7, 0.6, 0.5, 0.1));
    --bs-alarivigradient: linear-gradient(180deg, rgba(0.5, 0.5, 0.5, 0.0), rgba(0.5, 0.5, 0.5, 0.15));
    --bs-pelirivigradient: linear-gradient(180deg, rgba(0.5, 0.5, 0.5, 0.0), rgba(0.5, 0.5, 0.5, 0.07));
    --bs-tuloksetgradient: linear-gradient(120deg, rgba(0.5, 0.5, 0.5, 0.2), rgba(0.5, 0.5, 0.5, 0.4));
    --bs-inforuutugradient: linear-gradient(120deg, rgba(0.5, 0.5, 0.5, 0.2), rgba(0.5, 0.5, 0.5, 0.4));
}

.bg-kaisakaaviogradient {
    background-image: var(--bs-kaisakaaviogradient) !important;
}

.bg-taustagradient {
    background-image: var(--bs-taustagradient) !important;
}

.bg-kaisakaaviogradient-invert {
    background-image: var(--bs-kaisakaaviogradient-invert) !important;
}

.bg-kaisakaaviogradient-yla {
    background-image: var(--bs-kaisakaaviogradient-yla) !important;
}

.bg-kaisakaaviogradient-ala {
    background-image: var(--bs-kaisakaaviogradient-ala) !important;
}

.bg-topshade {
    background-image: var(--bs-topshade) !important;
}

.bg-otsikkogradient {
    background-image: var(--bs-otsikkogradient) !important;
}

.bg-painikegradient {
    background-image: var(--bs-painikegradient) !important;
}

.bg-ikkunagradient {
    background-image: var(--bs-ikkunagradient) !important;
}

.bg-alarivigradient {
    background-image: var(--bs-alarivigradient) !important;
}

.bg-pelirivigradient {
    background-image: var(--bs-pelirivigradient) !important;
}

.bg-tuloksetgradient {
    background-image: var(--bs-tuloksetgradient) !important;
}

.bg-musta {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-musta-rgb), var(--bs-bg-opacity)) !important;
}

.bg-kaisakaaviogreen {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-kaisakaaviogreen-rgb), var(--bs-bg-opacity)) !important;
}

.bg-kaisakaavioblue {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-kaisakaavioblue-rgb), var(--bs-bg-opacity)) !important;
}

.bg-kaisakaavioorange {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-kaisakaavioorange-rgb), var(--bs-bg-opacity)) !important;
}

.bg-kaisakaaviored {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-kaisakaaviored-rgb), var(--bs-bg-opacity)) !important;
}

.bg-kaisakaaviolive {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-kaisakaaviolive-rgb), var(--bs-bg-opacity)) !important;
}

.bg-kaisakaaviosali {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-kaisakaaviosali-rgb), var(--bs-bg-opacity)) !important;
}

.bg-kaisakaavioilmo {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-kaisakaavioilmo-rgb), var(--bs-bg-opacity)) !important;
}

.bg-kaisakaaviotulokset {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-kaisakaaviotulokset-rgb), var(--bs-bg-opacity)) !important;
}

.bg-kaisakaavioranking {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-kaisakaavioranking-rgb), var(--bs-bg-opacity)) !important;
}

.bg-pelirivi {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-pelirivi-rgb), var(--bs-bg-opacity)) !important;
}

.bg-pelirivikaynnissa {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-pelirivikaynnissa-rgb), var(--bs-bg-opacity)) !important;
}

.bg-pelirivityhja {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-pelirivityhja-rgb), var(--bs-bg-opacity)) !important;
}

.fg-sijoituskommentti {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-sijoituskommentti-rgb), var(--bs-text-opacity)) !important;
}

.fg-white {
    color: var(--bs-white);
}

.ylarivilinkki-iso {
    font-size: 1.5rem;
    margin-top: -0.3rem;
}

.tekstivarjo {
    text-shadow: 1px 1px 3px black;
}

.tekstivarjo-laaja {
    text-shadow: 0px 0px 10px black, 1px 1px 3px black, 1px 1px 2px black, 0px 0px 5px black, 0px 0px 25px black;
}

.ylarivilinkki-normaali {
    font-size: 1.25rem;
}

.striiminotsikko {
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 10;
    width: 100%;
    height: 64px;
    overflow: hidden;
}

.striimilaatikko {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-color: transparent
}

.striimikehys {
    padding: 0 !important;
    margin: 0 !important;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.tulostaululaatikko {
    clear: both;
    position: FIXED;
    left: 0;
    right: 0;
    bottom: 0;
    height: 80px;
    overflow: visible;
    width: 100%;
    background-color: transparent
}

.tulostaululaatikko_kokoruutu {
    clear: both;
    position: FIXED;
    left: 0;
    right: 0;
    bottom: 0;
    height: 100%;
    overflow: visible;
    width: 100%;
    background-color: transparent
}

.katsojiadiv {
    text-shadow: 1px 1px 3px black;
}

.katsojialaatikko {
    position: fixed;
    top: 10px;
    right: 20px;
    width: 72px;
    height: 50px;
    z-index: 15;
}

.katsojialaatikko-alanurkka {
    position: fixed;
    bottom: 30px;
    right: 20px;
    width: 72px;
    height: 50px;
    z-index: 15;
}

.pallosarake {
    width: 26px;
    text-align: center;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-right: 1px !important;
}

.pallo {
}

@keyframes vilkku-animation {
    0% {
        opacity: 1.0;
    }

    80% {
        opacity: 1.0;
    }

    100% {
        opacity: 0.0;
    }
}

.vilkku {
    animation: vilkku-animation;
    animation-direction: alternate;
    animation-duration: 2s;
    animation-iteration-count: infinite;
}

.poytasarake {
    width: 96px;
    text-align: center;
    font-size: 1rem !important;
    border: 0 !important;
}

.poytasarakelive {
    width: 96px;
    padding: 0 !important;
    margin: 0 !important;
    text-align: center !important;
    vertical-align: middle !important;
    font-size: 1rem !important;
    border: 0 !important;
}

.linkkipainike {
    padding-left: 0px;
    padding-right: 0px;
    padding-top: 2px;
    padding-bottom: 2px;
    margin: 0;
    margin-right: 3px;
    width: 90px;
    height: 32px;
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
    border-width: 2px !important;
    border-color: #fff !important;
    font-weight: bolder !important;
    background-image: var(--bs-painikegradient) !important;
    vertical-align: middle !important;
    text-shadow: 1px 1px 2px black;
}

.linkkipainike-kapea {
    padding-left: 3px;
    padding-right: 3px;
    padding-top: 2px;
    padding-bottom: 2px;
    margin: 0;
    margin-left: 3px;
    margin-right: 3px;
    height: 32px;
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
    border-width: 2px !important;
    border-color: #fff !important;
    font-weight: bolder !important;
    background-image: var(--bs-painikegradient) !important;
    vertical-align: middle !important;
    text-shadow: 1px 1px 2px black;
}

.linkkipainike-sali {
    padding-left: 3px !important;
    padding-right: 3px !important;
    padding-top: 1px !important;
    padding-bottom: 0px !important;
    margin: 0 !important;
    margin-left: 3px !important;
    margin-right: 3px !important;
    margin-bottom: 2px !important;
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
    border-width: 2px !important;
    border-color: #fff !important;
    font-weight: bolder !important;
    background-image: var(--bs-painikegradient) !important;
    vertical-align: top !important;
    text-shadow: 1px 1px 2px black;
}

.linkkipainike-levea {
    width: 192px;
}

.linkkipainike-iso {
    width: 256px;
    height: 38px;
    padding-top: 4px;
}

.linkkipainike-auto {
    width: auto;
    height: auto;
    padding: 6px;
    margin: 4px;
}

.linkkipainike-biljardi-org {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-biljardi-org-rgb), var(--bs-bg-opacity)) !important;
}

.ilmopainike {
    padding: 8px !important;
    padding-left: 3px !important;
    margin: 4px !important;
    margin-right: 0 !important;
    width: auto;
    height: auto;
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
    border-width: 2px !important;
    border-color: #fff !important;
    font-weight: bolder !important;
    background-image: var(--bs-painikegradient) !important;
    vertical-align: middle !important;
    text-shadow: 1px 1px 2px black !important;
}

.linkkikuvake {
    padding: 0 !important;
    padding-left: 3px !important;
    padding-right: 3px !important;
    float: left !important;
    vertical-align: middle !important;
}

.linkkikuvake-biljardi-org {
    width: 24px !important;
    height: 24px !important;
}

.pistesarake {
    width: 25px;
    text-align: center !important;
    vertical-align: middle !important;
    padding: 0 !important;
    border: 0 !important;
}

.viivasarake {
    width: 10px;
    text-align: center !important;
    vertical-align: middle !important;
    padding: 0 !important;
    border: 0 !important;
}

.infosarakekapea {
    width: 64px;
    text-align: left !important;
    border: 0 !important;
}

.infosarake {
    width: auto;
    text-align: left !important;
    border: 0 !important;
}

.pelaajasarake1 {
    width: auto !important;
    text-align: right !important;
    border: 0 !important;
}

.pelaajasarake2 {
    width: auto !important;
    text-align: left !important;
    border: 0 !important;
}

.puhtaalla {
    font-weight: 700 !important;
}

.pudonnut {
    font-weight: 700 !important;
    --bs-text-opacity: 1;
    color: rgba(var(--bs-punainen-rgb), var(--bs-text-opacity)) !important
}

.pisteetvoittaja {
    font-weight: 700 !important;
}

.pisteethaviaja {
    font-weight: 700 !important;
    --bs-text-opacity: 1;
    color: rgba(var(--bs-punainen-rgb), var(--bs-text-opacity)) !important
}

.pelirivi {
    padding: 0 !important;
    margin: 0 !important;
    vertical-align: middle;
}

.pelirivikaynnissa {
    padding: 0 !important;
    margin: 0 !important;
    vertical-align: middle;
}

.pelisarake {
    padding: 0 !important;
    margin: 0 !important;
}

.infootsikko {
    text-align: right !important;
    font-weight: 600 !important;
    width: 120px;
}

.infotieto {
    text-align: left !important;
    width: auto;
}

.tilastootsikko {
    text-align: right !important;
    font-weight: 600 !important;
    width: 180px;
}

.tilastonumero {
    text-align: left !important;
    width: 72px;
}

.tilastotieto {
    text-align: right !important;
    width: auto;
}

.tulostaulucard {
    height: 320px;
}

.tulostauludiv {
    -ms-transform: scale(0.44);
    -moz-transform: scale(0.44);
    -o-transform: scale(0.44);
    -webkit-transform: scale(0.44);
    transform: scale(0.44) translate(-120px, -80px);
    -ms-transform-origin: 0 0;
    -moz-transform-origin: 0 0;
    -o-transform-origin: 0 0;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
}

.tulostauluiframe {
    width: 1280px;
    height: 850px;
    overflow: hidden;
}

.pelit-table {
    border: 1px solid #dee2e6 !important;
    border: 1px solid #000000 !important;
    border-width: 2px !important;
    padding: 0 !important;
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
    margin: 0 !important;
    margin-bottom: 0.5rem !important;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.kilpailuntilanne-tr {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important;
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-kaisakaaviolive-rgb), var(--bs-bg-opacity)) !important;
    border: 0 !important;
    border-bottom: 2px solid #000000 !important;
    border-width: 1px !important;
}

.kilpailuntilanne-td {
    border: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 3px !important;
    padding-right: 3px !important;
    padding-left: 7px !important;
    text-align: left !important;
    vertical-align: middle !important;
}

.kilpailuntilanne-seuraa-td {
    width: 96px;
    padding: 0 !important;
    padding-top: 3px !important;
    padding-bottom: 3px !important;
    margin: 0 !important;
    text-align: center !important;
    vertical-align: middle !important;
    font-size: 1rem !important;
    border: 0 !important;
    vertical-align: bottom !important;
}

.kilpailunilmo-tr {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important;
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-kaisakaavioilmo-rgb), var(--bs-bg-opacity)) !important;
    border: 0 !important;
    border-bottom: 2px solid #000000 !important;
    border-width: 1px !important;
}

.kilpailunilmo-td {
    border: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 3px !important;
    padding-right: 3px !important;
    padding-left: 7px !important;
    text-align: left !important;
    vertical-align: middle !important;
}

.kilpailunilmotiedot-td {
    border: 0 !important;
    padding-top: 3px !important;
    padding-bottom: 3px !important;
    padding-right: 3px !important;
    padding-left: 7px !important;
    text-align: left !important;
    vertical-align: bottom !important;
    width: 96px !important;
}

.ilmorivi {
    border: 1px solid #dee2e6 !important;
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-pelirivikaynnissa-rgb), var(--bs-bg-opacity)) !important;
    background-image: var(--bs-pelirivigradient) !important;
}

.ilmosarake {
    text-align: start !important;
    margin: 3px !important;
    padding: 3px !important;
}

.pelirivi-kaynnissa-tr {
    border: 1px solid #dee2e6 !important;
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-pelirivikaynnissa-rgb), var(--bs-bg-opacity)) !important;
    background-image: var(--bs-pelirivigradient) !important;
}

.pelirivi-tr {
    border: 1px solid #dee2e6 !important;
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-pelirivi-rgb), var(--bs-bg-opacity)) !important;
}

.pelirivi-tyhja-tr {
    border: 1px solid #dee2e6 !important;
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-pelirivi-rgb), var(--bs-bg-opacity)) !important;
}

.ikkuna {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important;
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important;
    padding: 0 !important;
    margin-bottom: 3rem !important;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.65) !important;
}

.ikkuna-otsikko {
    border-width: 4px !important;
    padding: 0 !important;
    margin: 0 !important;
    text-align: left !important;
    --bs-text-opacity: 1;
    color: rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important;
    background-image: var(--bs-otsikkogradient) !important;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.ikkuna-sisalto {
    background-image: var(--bs-ikkunagradient) !important;
    margin: 0 !important;
    padding: 1rem !important;
}

.ikkuna-alapalkki {
    background-image: var(--bs-alarivigradient) !important;
}

.inforuutu {
    border-width: 2px !important;
    border-color: #212529 !important;
    margin-bottom: 1.5rem !important;
    --bs-text-opacity: 1;
    color: rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important;
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-inforuutu-rgb), var(--bs-bg-opacity)) !important;
    background-image: var(--bs-inforuutugradient) !important;
    font-weight: 700 !important;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.inforuutu-sisalto {
    padding: 0 !important;
    margin: 0 !important;
}

.muokkausrivi {
    border-width: 2px !important;
    border-radius: 0.25rem !important;
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important;
    margin: 0.5rem !important;
    padding: 0.5rem !important;
    box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .05);
}

.muokkaussarake {
    flex: 0 0 auto;
    width: 99.33333333%;
    margin-bottom: 1rem !important;
}

.muokkauspainike {
    padding-left: 4px;
    padding-right: 8px;
    padding-top: 2px;
    padding-bottom: 2px;
    margin: 2px;
    margin-right: 0px;
    height: 32px;
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
    border-width: 2px !important;
    border-color: #fff !important;
    font-weight: bolder !important;
    background-image: var(--bs-painikegradient) !important;
    vertical-align: middle !important;
    justify-content: center;
}

.muokkauskuvake {
    padding: 0 !important;
    padding-left: 3px !important;
    padding-right: 3px !important;
    padding-top: 5px !important;
    margin: 1px !important;
    float: left !important;
    vertical-align: middle !important;
}

.lyhytsarake {
    width: 72px !important;
}

.rankingsijoitussarake {
    width: 20px !important;
    text-align: center;
    font-weight: 700 !important;
}

.rankingnimisarake {
    width: 200px !important;
    text-align: left;
    font-weight: 700 !important;
}

.rankingtehotsarake {
    width: 48px !important;
    text-align: center;
}

.rankingpistesarake {
    width: 48px !important;
    text-align: center;
    font-weight: 700 !important;
    border: 0 !important;
    border-right: 2px solid #888888 !important;
}

.rankingosakilpailusarake {
    width: 32px !important;
    text-align: center;
    border: 0 !important;
    border-right: 1px solid #888888 !important;
}

.sarake-40 {
    width: 40px !important;
}

.sarake-48 {
    width: 48px !important;
}

.sarake-64 {
    width: 64px !important;
}

.sarake-78 {
    width: 78px !important;
}

.sarake-80 {
    width: 80px !important;
}

.sarake-96 {
    width: 96px !important;
}

.sarake-128 {
    width: 128px !important;
}

.sarake-220 {
    width: 220px !important;
}

.tiedotsarake {
    width: 128px !important;
}

.minisarake {
    width: 32px !important;
}
