@font-face
{
  font-family: OpenSansCondLight;
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/OpenSans-CondLight.ttf') format('truetype');
}

@font-face
{
  font-family: OpenSansCondBold;
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/OpenSans-CondBold.ttf') format('truetype');
}

@font-face
{
  font-family: OpenSansRegular;
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/OpenSans-Regular.ttf') format('truetype');
}

@font-face
{
  font-family: SairaSemiCondBold;
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/SairaSemiCondensed-Bold.ttf') format('truetype');
}

@font-face
{
  font-family: KanitExtraBoldItalic;
  font-style: normal;
  font-weight: 800;
  src: url('../fonts/Kanit-ExtraBoldItalic.ttf') format('truetype');
}

@font-face
{
  font-family: Saira;
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/Saira-Regular.ttf') format('truetype');
}

@font-face
{
  font-family: Saira;
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/Saira-Bold.ttf') format('truetype');
}

@font-face
{
  font-family: Saira;
  font-style: normal;
  font-weight: 900;
  src: url('../fonts/Saira-Black.ttf') format('truetype');
}


body
{
  overflow-x: hidden;
  overflow-y: hidden;
  touch-action: none;
  user-select:none;
  background-color:#000;
  position: fixed;
  overscroll-behavior-y:contain;
  overscroll-behavior-x:contain;
  width:100%;
}

html,body{
	-webkit-overflow-scrolling : touch !important;
	height: 100% !important;
}

input {
  appearance: none;
  -webkit-appearance: none;
  touch-action: manipulation;
  box-sizing: border-box;
}

/* for custom buttons - fake and in and out move */
.btn {
  -webkit-transition: transform .1s ease-out; /* Safari and Chrome */
  -moz-transition: transform .1s ease-out; /* Firefox */
  -ms-transition: transform .1s ease-out; /* IE 9 */
  -o-transition: transform .1s ease-out; /* Opera */
  transition: transform .1s ease-out;
  touch-action: manipulation;
}

.btn:active{
  -webkit-transform:scale(.95); /* Safari and Chrome */
  -moz-transform:scale(.95); /* Firefox */
  -ms-transform:scale(.95); /* IE 9 */
  -o-transform:scale(.95); /* Opera */
   transform:scale(.95);
}

a, a:visited, a:hover, a:active {
  color: inherit;
  text-decoration:none;
  touch-action: manipulation;
}

#three_canvas
{
  z-index: -1;
  position: absolute;
  top:0px;
  left:0px;
  touch-action: none;
}
/* IMPORTANT: This disables all events, right click, click etc on images in our UI */
/* If we ever need to do that, we should catch the event with another div */ 
img {
  pointer-events: none;
}

/* Also prevent text select of everything in uihost */
.no_select
{
  -webkit-user-select: none;  /* Chrome all / Safari all */
  -moz-user-select: none;     /* Firefox all */
  -ms-user-select: none;      /* IE 10+ */
  user-select: none;          /* Likely future */  

  -webkit-user-drag: none;
  touch-action: manipulation;
}

#fps_tab
{
  position: fixed;
  width:150px;
  z-index: 5;
  background-color: #444444;
  color:#FFFFFF;
  min-height:40px;
  top:40px;
  left:200px;
  font-size:0.8em;
}

.tooltip
{
  padding: 0.5vh;
  font:1.5vh OpenSansRegular, sans-serif;
  color: black;
  background: whitesmoke;
  border-radius: 0.5vh;
  z-index: 5;
}

#uihost
{
  position: relative;
  width : 384px;
  height: 640px;
  overflow: hidden;
  z-index: 0;
}

.testPanel
{
  position: fixed;
  z-index: 30;
  width: 30vh;
  top:0;
  right: 0;
  height: 100vh;
  transition: right .45s cubic-bezier(.19,1.46,1,1.17);
  background-color: #2C2C2C;
  font: 3vh SairaSemiCondBold, sans-serif;
  color: white;
}

.titleDiv
{
  font-size: 0px;
  text-align: center;
}

.testPanelTitle
{
  font-size: 3.8vh;
  margin: auto;
}

.spin_result_section
{
  font-size: 0px;
  margin-top: 1vh;
  margin-bottom: 1vh;
  text-align: center;
  padding: 1vh;
}

.inputSpinText
{
  font-size: 2.5vh;
  margin: 0;
}

.testSpinValues
{
  width:90%;
  font: 2.5vh OpenSansRegular, sans-serif;
  margin-bottom: 0.5vh;
}

.repeat_text
{
  font-size: 2.5vh;
}

.testCheckbox
{
  width: 2.2vh;
  height: 2.2vh;
  font-size: 2.5vh;
  background-color: white;
  -webkit-appearance: checkbox
}

.testButton
{
  font: 2vh SairaSemiCondBold, sans-serif;
  margin-left: 1vh;
  margin-right: 1vh;
}

.testDropdown
{
  font: 2vh SairaSemiCondBold, sans-serif;
  width: 26vh;
  margin-bottom: 0.5vh;
}

.spin_event_section
{
  font-size: 0px;
  margin-top: 1vh;
  margin-bottom: 1vh;
  text-align: center;
  padding: 1vh;
}

.spin_events_title
{
  font-size: 2.5vh;
  margin: 0;
}

.latency_section
{
  margin-top: 1vh;
  margin-bottom: 1vh;
  font-size: 0px;
  text-align: center;
  padding: 1vh;
}

.latency_value_text
{
  font: 2vh OpenSansRegular, sans-serif;
  margin: 0;
}

.latency_text
{
  margin: 0;
  font-size: 2.5vh;
}

.slideRight
{
  right:-30vh;
}

.caption_label
{
  position: fixed;
  color : #FFFFFF;
  font-weight: bold;
}

#loadingUI
{
  display:none;
  position:absolute;
  top:0px;
  width: 100vw;
  height: 100vh;
  left: 0px;
  color:white;
  text-align:center;
  text-shadow: 2px 2px 3px black;
  background: url("images/bg-scene.jpg");
  background-size: 166vh;
  background-position-x: center;
  background-position-y: -14vh;
  z-index: 10;
}

#loadingLogo
{
  position: relative;
  left: 0;
  right: 0;
  width: 60vh;
  height: 30.5vh;
  margin: auto;
  margin-top: 4vh;
  background-size: 60vh;
}

#loadingLegalText
{
  font: 1.7vh OpenSansRegular, sans-serif;
  color:#ccc;
  line-height: 2.2vh;
  position: absolute;
  top: 82vh;
  width: 90%;
  left: 0;
  right: 0;
  margin: auto;
}

#loadingFonts
{
  color: black;
  bottom: 0px;
  position: absolute;
}

#loadingPreFont1
{
  font: 0.5vh OpenSansCondBold, sans-serif;
}

#loadingPreFont2
{
  font: 0.5vh OpenSansCondLight, sans-serif;
}

#loadingProgress
{
  position: absolute;
  left: 0;
  top: 0;
  width: 100vw;
  height: 100vh;
  color:white;
  text-align:center;
  z-index: 20;
}

#loadingProgressText
{
  position: absolute;
  left: 0;
  right: 0;
  top: 69vh;
  font: 4.2vh KanitExtraBoldItalic, sans-serif;
}

#loadingProgressBar
{
  background: #333;
  width: 27vh;
  height: 1.2vh;
  border-radius: 0.6vh;
  top: 75vh;
  left: 0;
  right: 0;
  position: absolute;
  margin: auto;
}

#loadingProgressFilled
{
  background: white;
  height: 100%;
  width: 20%;
  border-radius: inherit;
}

#hud_curtain
{
  width: 672px;
  height: 729px;
  background-color: black;
  z-index: 15;
  position: absolute;
  color:white;
  text-align:center;
  text-shadow: 2px 2px 3px black;
  background: url("images/bg-scene.jpg");
  background-size: 166vh;
  background-position-x: center;
  background-position-y: -14vh;
}

#curtainSpinner, #curtainImg
{
  position:absolute;
  left:0;
  right:0;
  margin:auto;
}

#curtainSpinner
{
  height:7vh;
  bottom:7vh;
}

#curtainImg_bg
{
  background: black;
  width: 100%;
  height: 100%;
  top: 0;
  position: fixed;
  z-index: 20;
}

#curtainImg
{
  height: 45.4vh;
  width: 42vh;
  top:0;
  bottom:0;
  background: url("images/ui_atlas.png");
  background-size: 200vh;
  background-position: 48% 100%;
}

.hideButton
{
  position: inherit;
  right:5px;
  top:5px;
  z-index: 6;
}

.greyed_out
{
  background-color: #777 !important;
  pointer-events:none;
}

/* DraftKings Roulette UI elements */
#intro_blocker
{
  z-index: 12;
}

.intro_panel
{
  position: absolute;
  width: 45vh;
  max-height: 82vh;
  z-index: 4;
  top: 6vh;
  padding: 2.6vh;
  left: 0;
  right: 0;
  margin: auto;
  color:white;
  font: 2.9vh OpenSansCondBold, sans-serif;
  border-style: inset;
  border-color: tan;
  border-radius: 2.5vh;
  border-width: 0.5vh;
  background-color: rgba(1,1,1,0.85);
  transition:0.65s;
}

.intro_list
{
  margin-bottom: 1.5vh;
  list-style: none;
}

.intro_shrink
{
  transform: scale(0.05,0.07);
  top: -26vh;
  left: 46vh;
}

.intro_sq_ico
{
  background: url(images/ui_atlas.png);
  width: 5vh;
  height: 5vh;
  background-size: 68vh;
  border-width: 0;
  display: inline-block;
  position: relative;
  top: 1.5vh;
}

.intro_sq_bolt
{
  background-position: 52% 34.2%;
  width: 4vh;
}

.intro_sq_felt
{
  background-position: 12.4% 34%;
  width: 4vh;
}

.intro_sq_fav
{
  background-position: 88.5% 71.1%;
}

.intro_sq_bullet
{
  background-image: url(images/intro_bull.png);
  background-size: 4.5vh;
  display: inline-block;
  width: 4.5vh;
  height: 4.5vh;
  position: relative;
  top: 1.5vh;
}

#STR_INTRO_TITLE
{
  font: 3.2vh KanitExtraBoldItalic, sans-serif;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  width: 36vh;
  text-align: center;
}

#intro_logo
{
  position: relative;
  left: 0;
  right: 0;
  width: 39vh;
  height: 20vh;
  margin: auto;
  margin-bottom: 4vh;
  background: url(images/logo.png);
  background-size: 40vh;
}

#intro_play_btn
{
  border-width: 0.4vh;
  border-style: outset;
  border-color: lightgoldenrodyellow;
  background-image: linear-gradient(#666666, #111111, #000000);
  width: 24vh;
  height: 9vh;
  border-radius: 2vh;
  text-align: center;
  font: 3.5vh SairaSemiCondBold, sans-serif;
  position: relative;
  margin-top: 2vh;
  margin-bottom: 5vh;
  left: 11vh;
}

.intro_noshowagain
{
  position: absolute;
  bottom: 1.5vh;
  width: 24vh;
  height: 4vh;
  border-radius: 0.5vh;
  z-index: 5;
  left:0;
  right:0;
  margin: auto;
}

#btn_INTRO_CHECK,
#btn_conf_CHECK
{
  top: 4vh;
  width: 2.2vh;
  height: 2.2vh;
  z-index: 5;
  background-color: white;
  -webkit-appearance: checkbox
}

/* used for all atlas based elements */
.atlas
{
  position: absolute;
  background: url("images/ui_atlas.png");
  border-width: 0;
  font: 2.2vh OpenSansCondBold, sans-serif;
}

.rules_ico
{
  background: url(images/ui_atlas.png);
  width: 5vh;
  height: 5vh;
  margin: auto;
  background-size: 60vh;
}

.rules_ico_fr
{
  width: 5vh;
  height: 5vh;
  left: 0;
  right: 0;
  margin: auto;
}

.rules_ico_fr_l
{
  left: 0;
  margin: unset;
}

#side_frame
{
  position:relative;
  width: 100%;
  height: 100%;
  max-width: 93vh;
  margin: auto;
}

.textval_changing
{
  transform: scale(1.25);
}

.favGradient
{
  background: linear-gradient(to bottom, #FFFFAA 45%, #a69b45 50%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.whiteGradient
{
  background: linear-gradient(to bottom, #FFFFFF 45%, #a69b95 50%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.ui_msg
{
  pointer-events: none;
  z-index: 9;
  color: white;
  position: absolute;
  top: 45vh;
  left: 0;
  right: 0;
  margin: auto;
  text-align: center;
  font: 4.5vh OpenSansCondBold, sans-serif;
  text-shadow:
    0px 3px 0 #222,
    0px 0 5px rgba(255,255,120,0.6),
    0px 0px 15px rgba(255,255,70,0.8),
    0px 0px 15px #000,
    0px 0px 15px #000;
}

#hud_msg
{
  top: 45%;
}

#hud_msg_bot
{
  top: 75%;
}

#epic_win
{
  pointer-events: none;
  width: 49vh;
  height: 40vh;
  top: 8vh;
  left: 0;
  right: 0;
  margin: auto;
}

.epic_win 
{
  position: absolute;
  background: url(images/epic_win.png);
  background-size: 148vh;
  animation: growIn 0.6s;
}

.epic_win_hide
{
  animation: shrinkOut 0.6s
}

.fx_epic_win_icon_cell1
{  
  background-position: 0% 97%;
}

.fx_epic_win_icon_cell2
{
  background-position: 49.75% 97%;
}

.fx_epic_win_icon_cell3
{  
  background-position: 99.65% 97%;
}

#STR_BIGWIN
{
  font-size: 6vh;
  top: 40vh;
}

.fx_confetti
{
  pointer-events: none;
  width: 20vh;
  height: 20vh;
  position: absolute;
  background: url(images/epic_win.png);
  border-width: 0;
  background-size: 151vh;
  background-position: 100% 42.86%;
}

.fx_confetti_cell1
{
  background-position: 0.9% 0%;
}

.fx_confetti_cell2
{
  background-position: 15.29% 0%;
}

.fx_confetti_cell3
{
  background-position: 29.57% 0%;
}

.fx_confetti_cell4
{
  background-position: 43.86% 0%;
}

.fx_confetti_cell5
{
  background-position: 58.14% 0%;
}
.fx_confetti_cell6
{
  background-position: 72.41% 0%;
}
.fx_confetti_cell7
{
  background-position: 86.71% 0%;
}

.fx_confetti_cell8
{
  background-position: 101% 0%;
}

.fx_confetti_cell9
{
  background-position: 0% 14.29%;
}

.fx_confetti_cell10
{
  background-position: 14.29% 14.29%;
}
.fx_confetti_cell11
{
  background-position: 28.57% 14.29%;
}
.fx_confetti_cell12
{
  background-position: 42.86% 14.29%;
}
.fx_confetti_cell13 {
  background-position: 57.14% 14.29%;
}
.fx_confetti_cell14
{
  background-position: 71.41% 14.29%;
}
.fx_confetti_cell15
{
  background-position: 85.71% 14.29%;
}
.fx_confetti_cell16
{
  background-position: 100% 14.29%;
}

.fx_confetti_cell17
{
  background-position: -1% 28.57%;
}

.fx_confetti_cell18
{
  background-position: 13.29% 28.57%;
}

.fx_confetti_cell19
{
  background-position: 27.57% 28.57%;
}

.fx_confetti_cell20
{
  background-position: 41.86% 28.57%;
}

.fx_confetti_cell21
{
  background-position: 56.14% 28.57%;
}
.fx_confetti_cell22
{
  background-position: 70.41% 28.57%;
}
.fx_confetti_cell23
{
  background-position: 84.71% 28.57%;
}
.fx_confetti_cell24
{
  background-position: 99% 28.57%;
}
.fx_confetti_cell25
{
  background-position: -2% 42.85%;
}
.fx_confetti_cell26
{
  background-position: 12.29% 42.86%;
}
.fx_confetti_cell27
{
  background-position: 26.57% 42.86%;
}
.fx_confetti_cell28
{
  background-position: 40.86% 42.86%;
}
.fx_confetti_cell29
{
  background-position: 55.14% 42.86%;
}
.fx_confetti_cell30
{
  background-position: 69.41% 42.86%;
}




.hidden_msg
{
  animation: shrinkOut 0.6s;
}

@keyframes growIn
{
  from {
    transform: scale(0);
  }
  to {
    transform: scale(1);
  }
}

@keyframes shrinkOut
{
  from {
    transform: scale(1);
  }
  to {
    transform: scale(0);
  }
}

#hud_conf_panel
{
  width: 44vh;
  height: 25.3vh;
  z-index: 4;
  top: 24vh;
  left: 0;
  right: 0;
  margin: auto;

  background: rgba(0, 0, 0, 0.8);
  border-radius: 1.5vh;
  border-width: 0.2vh;
  border-style: outset;
  border-color: #885;
}

.conf_btn
{
  position: absolute;
  top: 16.5vh;
  background-position: 0.2% 23.7%;
  background-size: 60vh;
  width: 16vh;
  height: 6vh;
  border-radius: 0.5vh;
  font-size: 2.6vh;
  font-weight: 600;
  z-index: 5;
}

.conf_noshowagain
{
  position: absolute;
  top: 11.5vh;
  width: 24vh;
  height: 4vh;
  border-radius: 0.5vh;
  z-index: 5;
  left:12vh;
}

.conf_checkmark {
  position: absolute;
  background-color: #000;
  z-index: 5;
}

.conf_txt
{
  position: absolute;
  top: 2vh;
  left: 0;
  right: 0;
  margin: auto;
  width: 75%;
  font-size: 3vh;
  color: white;
}

#btn_conf_CHECK
{
  top: 4vh;
  width: 2.2vh;
  height: 2.2vh;
  z-index: 5;
  background-color: white;
  -webkit-appearance: checkbox
}

.checkbox_txt
{
  color:#ccc;
}

#btn_conf_OK
{
  left: 4vh;
}

#btn_conf_CANCEL
{
  right: 4vh;
}

#bottom_play_buttons, #top_hud_bar, #chip_selector_area
{
  position: absolute;
  left:0px;
  right:0px;
  margin: auto;
}

#top_hud_bar
{
  top: 0.35vh;
  height:8vh;
  max-width: 93vh;
}

.sq_btn, .hud_btn
{
  position: absolute;
  width: 6.4vh;
  height: 6.4vh;
  padding:0px;
  z-index: 2;
}

.sq_btn
{
  border-radius: 1.5vh;
  border-width: 0.2vh;
  border-style: outset;
  border-color: #ddd;
  background-color: #111111;
}

.hud_btn
{
  background-color: transparent;
  border: 0px;
}

#btn_FAV, #btn_DEL, #btn_UNDO
{
  left:0;
}

#fav_blocker
{
  background: rgba(0, 0, 0, 0.1);
  left: -50%;
  width: 200%;
  padding-left: 50%;
  position: relative;
  z-index: 4;
}

#panel_FAV
{
  background: rgb(0.2, 0.2, 0);
  position: relative;
  left: 0.1vh;
  width: 23vh;
  z-index: 5;
  min-height: 17vh;
  border-radius: 1.5vh;
  border-width: 0.2vh;
  border-style: outset;
  border-color: #cc6;
}

.panel_FAV
{
  top: 10.5vh;
}



.popup_title
{
  position: relative;
  font: 2.4vh OpenSansCondBold, sans-serif;
  top: 1vh;
  color: #ff9;
  text-align: center;
  height: 7vh;
  width:100%;
}

#saved_favs
{
  position: relative;
  width:100%;
}

.fav_label_txt
{
  position: relative;
  width: 21vh;
  height: 5.5vh;
  z-index: 5;
  font-family: OpenSansRegular;
  font-size: 2vh;
  color: lightyellow;
  text-align: center;
  padding-left:1vh;
  padding-right: 1vh;
  padding-top: 1.5vh;
}

.fav_item_btn
{
  width: 20vh;
  left: 1.5vh;
  position: relative;
  background: black;
  border-radius: 1.5vh;
  border-width: 0.2vh;
  border-color: #ddd;
  border-style: outset;
  font: 2vh OpenSansRegular, sans-serif;
}

.fav_txt
{
  text-align:left;
  overflow: hidden;
  white-space: nowrap;
  display: block;
  width: 18.5vh;
  text-overflow: ellipsis;
  padding-left: 0.5vh;
}

.fav_input
{
  position: absolute;
  border-radius: inherit;
  top: 0;
  left: 0%;
  width: 99%;
  height: 97%;
  font: 2vh OpenSansRegular, sans-serif;
  padding-left: 0.5vh;
  color:black;
  background-color: lightgoldenrodyellow;
}

.fav_input::selection
{
  background-color:goldenrod;
  color:black;
}

#fav_edit_btns
{
  position: relative;
  height: 6.5vh;
}

.fav_edit_btn
{
  position: absolute;
  top: 0.5vh;
  height: 4.5vh;
  width: 4.8vh;
  border-radius: 1.5vh;
  border-width: 0.2vh;
  border-style: outset;
  border-color:#ff4;
  background-color: black;
  background-size:70vh;
}

.fav_selected
{
  border-color: #ff4;
  font-size:2.2vh;
  color:#ff9;
  border-width: 0.4vh;
}

#btn_EDITFAV
{
  right: 4vh;
  background-position-x: 35.1%;
}

#btn_DELFAV
{
  left: 4vh;
  background-position: 20% 0.8%;  
}

.fav_button_icon
{
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 4vh;
  height: 4vh;
}

#btn_icon_EDITFAV
{
  background-position: 35.6% 0.8%;
  background-size: 72vh;
}

#btn_icon_DELFAV
{
  background-position: 20.7% 0.8%;
  background-size: 60vh;
}

#btn_ADDFAV
{
  font-family: OpenSansCondBold;
  font-size: 2.2vh;
}

#btn_FAVINPUT
{
  right: -5.4vh;
  background-position: 72.3% 0.8%;
  background-size: 66vh;
}

#btn_FAVCANCEL
{
  right: -10.4vh;
  background-position: 20.4% 0.8%;
  background-size: 60vh;
}

#add_item_txt
{
  vertical-align: middle;
}

.fav_big_btn
{
  position: relative;
  width: 18.2vh;
  height: 6.4vh;
  font-size: 2.2vh;
  font-weight: 600;
  border-radius: 1.5vh;
  border-width: 0.2vh;
  background-position: 0.2% 23.7%;
  background-size: 68.5vh;
  margin-top: 1.5vh;
  margin-bottom: 1vh;
  left: 2.4vh;
}

.fav_btn_enabled
{
  border-color: #cc6;
  border-width: 0.3vh;
}

#btn_SETTINGS, #btn_BOLT, #btn_FELT_TOG 
{
  right:0;
}

#btn_FAV, #btn_SETTINGS
{
  top:2vh;
}

#btn_BOLT, #btn_UNDO
{
  top: 9.5vh;
}

#btn_DEL, #btn_FELT_TOG 
{
  top:17vh;
}

.top_button_icon
{
  position: absolute;
  height: 90%;
  top: 5%;
  left: 0px;
  right:0px;
  margin: auto;
  background-size: 72vh;
}

.ico_sett
{
  background-position: 0.4% 85.5%;
  width: 85%;
}

.ico_sett_dimmed
{
  background-position: 8.7% 85.5%;
}

.ico_fav
{
  background-position: 89.0% 71.1%;
  width: 90%;
}

.fav_lit
{
  background-position: 99.2% 71.1%;
}

.ico_felt
{
  background-position: 12.4% 34%;
  width: 65%;
}


.felt_green
{
  background-position-x: 12.4%;
}

.felt_purple
{
  background-position-x: 0.7%;
}

.felt_red
{
  background-position-x: 18.1%;
}

.felt_blue
{
  background-position-x: 6.6%;
}

.felt_unlit
{
  background-position-x: 23.5%;
}

.ico_bolt
{
  background-position: 52% 34.2%;
  width: 70%;
}

.bolt_unlit
{
  background-position-x: 52%;
}

.bolt_halflit
{
  background-position-x: 42%;
}

.bolt_lit
{
  background-position-x: 32%;
}

.ico_del
{
  background-position: 83.8% 20.5%;
  width: 90%;
  background-size: 68vh;
}

.ico_del_glow
{
  background-position: 94.2% 20.5%;
}

.border_red
{
  border-color: red;
}

.border_yellow
{
  border-color: #ff4;
}

.meter
{
  vertical-align: -webkit-baseline-middle;
}

.meter_label
{
  color:goldenrod;

  /* Also implement Yellow orange gradient */ 
  background: linear-gradient(to bottom, #f6f649 33%, #d7692a 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.meter_value
{
  color:white;
  transition: transform .45s cubic-bezier(.19,1.46,1,1.17);
}

.top_meter
{
  width: 19.69vh;
  height: 6.8vh;
  text-align: center;
  font-size:2.5vh;
  padding-top:3vh;
  border-radius: 1vh;
  background-position: 0.29% 9.2%;
  background-size: 78.1vh;
}

#meter_WIN
{
  right: 0;
  left: 0;
  margin: auto;
  bottom: 20vh;
}

#chip_selector_area
{
  width: 55.8vh;
  height: 10.7vh;
}

.chip_selector_area
{
  bottom: 13.5vh;
}

#bottom_play_buttons
{
  width: 55.8vh;
  height: 16vh;
  overflow: hidden;
}

.bottom_play_buttons
{
  bottom: 0vh;
  transition: bottom .35s cubic-bezier(.55,-0.12,.23,1.29);
}

.fly
{
  bottom: -40vh;
} 

.side_elem
{
  width: 19.4vh;
  height: 6.4vh;
  font-size: 2.4vh;
  font-weight: 600;
  border-radius: 1.5vh;
  background-position: 0.8% 23.7%;
  background-size: 75.35vh;
  z-index: 1;
}

.ff_elem
{
  width: 7.2vh;
  height: 7.4vh;
  top: 10.15vh;
  border-radius: 1.5vh;
  background-position: 74.2% 20%;
  background-size: 91.5vh;
  z-index: 1;
}
.btn_txt
{
  text-align: center;
}

.rside
{
  right:0.9vh;
  text-align: right;
  padding-right: 1vh;
}

.lside
{
  left:0.9vh;
  text-align: left;
  padding-left: 1vh;
}

.top_row
{
  top:2vh;
}

.bottom_row
{
  bottom:1vh;
}

.bottom_bg
{
  width: 20.5vh;
  height: 8.9vh;
  bottom: 0.1vh;
  background-position: 100% 59.2%;
  background-size: 69vh;
}

#btn_CLEAR_icons
{
  position: absolute;
  top: 0;
  left: 1.2vh;
}

#bg_l
{
  left:0h;
}

#bg_r
{
  right:0vh;
}

#btn_PLAY
{
  position: absolute;
  background: transparent;
  width: 28vh;
  height: 32vh;
  top: 0vh;
  left: 0px;
  right: 0px;
  margin: auto;
  border-radius: 14vh;
  border-width: 0px;
  z-index: 3;
  transition: text-shadow 1.75s;
  -webkit-transition : text-shadow 1.75s;
}

.btn_PLAY
{
  text-shadow: 
  0 -1px 0 #866, 
  0 -2px 0 #896969, 
  0 -3px 0 #977, 
  0 -4px 0 #997979, 
  0px -5px 3px rgba(255,255,120,0.6), 
  0px 3px 10px rgba(255,255,70,0.8);
}

.btn_PLAY_bg
{
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-position: 99.5% 53%;
  background-size: 68vh;
  -webkit-filter: brightness(1.01);
  filter: brightness(1.01);
  transition: filter 1.75s;
  -webkit-transition : -webkit-filter 1.75s;
}

.btn_PLAY_bright
{
  text-shadow: 
  0 -1px 0 rgb(245, 239, 239), 
  0 -2px 0 #e9d4d4, 
  0 -3px 0 #977, 
  0 -4px 0 #997979, 
  0px -5px 3px rgba(255,255,150,0.6), 
  0px 3px 10px rgba(255,255,70,0.8);
}

.btn_PLAY_bg_bright
{
  -webkit-filter: brightness(1.15);
  filter: brightness(1.15);
}

.btn_PLAY_bg_down
{
  background-position-y: 144%;
}

#btn_PLAY:disabled
{
  text-shadow: 
  0 -1px 0 #7d2020, 
  0 -2px 0 #7d2020,
  0 -3px 0 #7d2020,
  0 -4px 0 #7d2020,
  0px -5px 3px rgba(255,255,120,0.6),
  0px 3px 10px rgba(255,255,70,0.8);
}

.btn_txt_PLAY
{
  line-height: 3.3vh;
  font-size: 3.8vh;
  letter-spacing: 0.2ex;
  height:20vh;
  width: 32vh;
  display: table-cell;
  vertical-align: middle;
}

.btn_PLAY_txt_down
{
  height:22vh;
}

#btn_txt_X2
{
  padding-right: 4vh;
}

#btn_txt_CLEAR
{
  text-align: right;
  padding-right: 1vh;
}

#btn_txt_UNDO
{
  padding-left: 6vh;
}

#UNDO_guard
{
  height: 5.5vh;
  width: 3vh;
  right: 14.2vh;
}

.guard
{
  position: absolute;
  z-index: 9;
}

#UNDO_guard2
{
  height: 3.3vh;
  width: 3vh;
  left: -2vh;
}

#X2_guard
{
  height: 6.7vh;
  width: 3vh;
  left: 11.4vh;
}

#CLEAR_guard
{
  height: 6.7vh;
  width: 3vh;
  right: 11.4vh;
}

.meter_bottom
{
  height:5.28vh;
  width:15.5vh;
  padding-top:1.6vh;
  font-size:2.4vh;
  background-position-x: 36.6%;
  padding-left:2vh;
  padding-right:1.5vh;
}

#btn_icon_X2, #btn_icon_CLEAR, #btn_icon_X2_gray, #btn_icon_CLEAR_gray
{
  background-size: 62vh;
  height: 4vh;
  z-index: 5;
}

#btn_icon_X2, #btn_icon_X2_gray
{
  background-position: 45.7% 1.5%;
  width: 7.5vh;
  height: 4.5vh;
  left:3vh;
  top:0.5vh;
}

#btn_icon_X2_gray
{
  background-position-x: 84.2%;
}

#btn_icon_CLEAR, #btn_icon_CLEAR_gray
{
  background-position: 21% 1%;
  width: 4vh;
  left: 6vh;
  top: 1vh;
}

#btn_icon_CLEAR_gray
{
  background-position-x: 57.3%;
}

#btn_icon_UNDO, #btn_icon_UNDO_gray
{
  background-position: 28.25% 0.8%;
  width: 90%;
  top: 0.85vh;
  background-size: 90vh;
}

#btn_icon_UNDO_gray
{
  background-position-x: 64.55%;
}

#win_history_panel
{
  position: absolute;
  right: 0.1vh;
  top: 24vh;
  width: 8vh;
  height: 40vh;
  font: 3vh OpenSansCondBold, sans-serif;
}

/* The most recent winning number appears in its own special div */
.win_history_top_result
{
  display:table;
  border: 0.2vh solid #2C2C2C;
  border-radius: 1vh 1vh 0 0;
  width: 100%;
  height: 6vh;
  margin-bottom: 0.5vh;
  padding: 0vh 0.8vh;
  box-sizing: border-box;
  font-size: 150%;
  background-color: #050405;
  opacity: 0.9;
  /* glow */
  text-shadow: currentColor 0 0 2px, currentColor 0 0 5px;
}

.top_result_no_shadow
{
  text-shadow: none;
}


#win_history_entries_container
{
  padding-top: 0.8vh;
  position: relative;
  width: inherit;
  height: 37vh;
  box-sizing: border-box;
  border: 0.2vh solid #2C2C2C;
  border-radius: 0vh 0vh 1.5vh 1.5vh;
  background-color: #050405;
  opacity: 0.8;
}

.win_history_entry
{
  position: relative;
  margin: 0;
  width: inherit;
  padding: 0 0.8vh;
  box-sizing: border-box;
  line-height: 3.5vh;
}

.winning_number_black
{
  color: #FFFFFF;
  text-align: left;
}

.winning_number_red
{
  color: #FF0000;
  text-align: right;
}

.winning_number_green
{
  color: #00FF0C;
  text-align: center;
}

.sett_wide_btn
{
  height: 4.5vh;
  width: 16vh;
  text-align: center;
  border-radius: 1vh;
  border-width: 0.2vh;
  border-style: outset;
  border-color: #ddd;
  position: absolute;
}

#btn_FELT
{
  right: 0vh;
  top: 0.5vh;
  background-color: #666;
  background-image: linear-gradient(#bbb, #222);
}

#btn_RULES
{
  left: 2vh;
  bottom: 9.2vh;
  background-color: darkorange;
  background-image: linear-gradient(#fd7b08, #2c1601);
}

#btn_PAYTABLE
{
  right: 2vh;
  bottom: 9.2vh;
  background-color: green;
  background-image: linear-gradient(#57be03, #122501);
}

#btn_ADVANCED
{
  left:0;
  right:0;
  margin:auto;
  bottom: 2vh;
  background-color: rgb(85, 25, 116);
  background-image: linear-gradient(#8216ff, #1c013a);
}

#btn_BACK_TO_SETT
{
  left:0;
  right:0;
  margin:auto;
  bottom: 2vh;
  background-color: rgb(85, 25, 116);
  background-image: linear-gradient(#8216ff, #1c013a);
}

.state_btn, .state_btn_adv
{
	position: relative;
  width: 38vh;
  margin: 1vh auto;
}

.state_btn
{
  height: 11vh;
}

.state_btn_adv
{
  height: 9vh;
}

.state_btn_label
{
  position: relative;
  font-size: 3.8vh;
}

.state_btn_label_cond
{
  font-size:2.8vh;
  left:10vh;
  top:1.7vh;
  width:20vh;
}

.state_btn_wrapper
{
  width: 8.8vh;
  height: 8vh;
  right: 0;
  position: absolute;
  top: 0;
}

.state_cycle_btn
{
  right: 1vh;
  top: 0;
  background-size: 79vh;
  background-position: 62.8% 70.6%;
}

.state_btn_value, .state_btn_value_adv
{
  width: 8vh;
  right: 0;
  left: 0;
  margin: auto;
  position: absolute;
  text-align: center;
}

.state_btn_value
{
  top: 7vh;
  font-size: 2.5vh;
}

.state_btn_value_adv
{
  top: 6.3vh;
  font-size: 2.2vh;
}

.view_3d
{
  background-position: 79.6% 70.6%;
}

.view_ovr
{
  background-position: 71.2% 70.6%;
}

.custom_val
{
  background-position: 0.1% 85.5%;
}

.anim_default
{
  background-position: 51.5% 34.2%;
}

.anim_fast
{
  background-position: 41.3% 34.2%;
}

.anim_off
{
  background-position: 31.1% 34.2%;
}

.check_on
{
  background-position: 99% 0.8%;
  background-size: 108vh;
}

.check_off
{
  background-position: 91.5% 0.9%;
  background-size: 108vh;
}

.sound_off
{
  background-position: 58.3% 11.3%;
}

.sound_lo
{
  background-position: 66.65% 11.3%;
}

.sound_hi
{
  background-position: 75% 11.3%;
}

.music_off
{
  background-position: 83.4% 11.6%;
}

.music_lo
{
  background-position: 91.8% 11.6%;
}

.music_hi
{
  background-position: 100% 11.6%;
}

.gfx_hi
{
  background-position: 49.85% 11.8%;
}

.gfx_lo
{
  background-position: 41.5% 11.8%;
}

.window
{
  z-index: 11;
  height: 100%;
  width: 100%;
  background-color: white;
  color: black;
  top: 0;
  position: absolute;
  left: 0;
  overflow-x: auto;
  overflow-y: auto;
  font: 2vh OpenSansRegular, sans-serif;
}

.window p, h1, h2, h3, h4
{
  width: 98%;
  padding-left:1%;
}

.window_title,  .panel_title, .title_area
{
  padding-top: 1.5vh;
  padding-bottom: 1.5vh;
  font: 3vh OpenSansCondBold, sans-serif;
  font-weight: 600;
}

.window_title, .panel_title
{
  width: 100%;
  text-align: center;
  color: white;
  background: black;
}

.panel_title
{
  position: absolute;
}

.window_title
{
  position:fixed;
  z-index: 15;
}

.window_header
{
  font: 2.8vh OpenSansCondBold, sans-serif;
}

.window_subheader
{
  font: 2.8vh OpenSansRegular, sans-serif;
}

.game_title_main,
.game_title_sub,
.table_header
{
  color: black;
  font-family: "Saira";
}

.game_title_main
{
  font-size: 3.7vh;
  font-weight: 700;
}

.game_title_sub
{
  font-size: 2.8vh;
  font-weight: 700;
  line-height: 2vh;
}

.rules_h2,
.rules_h3
{
  font-family: "Saira";
  font-weight: 400;
  color: #2f5496;
}

.rules_h2
{
  font-size: 3.2vh;
}

.rules_h3
{
  font-size: 2.8vh;
}

.rules_list
{
  margin-inline-start: 1vh;
}

.table_title
{
  font-family: "Saira";
  font-weight: 700;
  font-size: 2.8vh;
  line-height: 1vh;
  text-align: center;
  padding-top: 2vh;
}

.table_header
{
  font-size: 2.2vh;
  background-color: #aae247;
  line-height: 1.8vh;
  font-weight: 400;
}

.table_row
{
  line-height: 2.1vh;
}

.table_row_sh
{
  background-color: #e2efd9;
}

.table_row_lg
{
  line-height: unset;
}

.table_width
{
  max-width: 50vh;
}

#settings_blocker
{
  background:transparent;
}

#settings_panel, #adv_settings_panel
{
  font: 3vh OpenSansCondBold, sans-serif;
  padding-bottom: 3vh;
  width: 44vh;
  left: 0;
  right: 0;
  margin: auto;
  position: relative;
  background:rgba(0, 0, 0, 0.67);
  height: 76.5vh;
  color: white;
}

#settings_footer
{
  font: 1.8vh OpenSansCondLight, sans-serif;
  position: absolute;
  bottom: 4.5vh;
  left: 0;
  right: 0;
  margin: auto;
  text-align: center;
}

.x_button
{
  position: absolute;
  top: 0;
  right: 0;
  width: 5vh;
  height: 5vh;
  margin: 0.5vh;
  border-radius: 1vh;
  border-width: 0.2vh;
  border-style: outset;
  border-color: #ddd;
  background-color: #111111;
}

.x_icon
{
  position: absolute;
  margin: 0.3vh;
  top:0;
  left:0;
  background: url(images/ui_atlas.png) 13% 0.2%;
  width: 4vh;
  height: 4vh;
  background-size: 58vh;
}

.blocker
{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background:rgba(0, 0, 0, 0.67);
  z-index: 4;
}

#errorPage
{
  position:absolute;
  width:100%;
  height:100%;
  left:0;
  top:0;
  padding-top: 10vh;
  font: 3vh SairaSemiCondBold, sans-serif;
  background-color: #444;
  z-index:20;
}

#errorMessage
{
  font-size:2.5vh;
  width:80%;
  margin-top: 3vh;
  padding: 2vh;
  display: block;
  background: #eff;
  border-radius: 1vh;
  margin: auto;
  max-height: 30vh;
  overflow: hidden;
  position: relative;
  top: 2vh;
  text-align: center;
}

#errorIcon
{
  top:10vh;
  height: 20vh;
  width: 20vh;
  margin: auto;
  background: url("images/icon_small.png");
  background-size: cover;
}

#errorButton
{
  width : 70%;
  padding:3vh;
  font-size: 4vh;
  white-space: nowrap;
  color:white;
  border-radius: 2vh;
  text-align: center;
  position: relative;
  overflow: hidden;
  border-width: 0.4vh;
  border-style: outset;
  border-color: #ddd;
  background-color: #111111;
  margin: auto;
  top:10vh;
}

/* Start of state overrides */
/* Add default values above*/
button
{
  color:white;
}

button:focus
{
  /* future highlight of focus element if desired */
  /* box-shadow: inset 0 0 100px 100px rgba(255, 255, 255, 0.1); */
  outline:none;
}

button:disabled
{
  box-shadow: inset 0 0 100px 100px rgba(0, 0, 0, 0.3);
  color:gray;
}

/* Start of media overrides */
/* iPhone X / XS / XR / XS Max support */
/* Override values for windows that get thinner than a 16:9 phone display */
 /* Return to height based values for windows that get thinner than we support */
@media 
only screen and (max-aspect-ratio: 14/25),
only screen and (device-width : 375px) and (device-height : 812px) and (-webkit-device-pixel-ratio : 3) and (orientation : portrait),
only screen and (device-width : 414px) and (device-height : 896px) and (orientation : portrait) 
{
  #loadingLogo
  {
    max-height:21vh;
    margin-top: 9vh;
  }

  .intro_panel
  {
    width: 90%;
    padding: 2.5%;
    font-size: 2.7vh;
  }

  .intro_list 
  {
    line-height: 4.5vh;
  }
  
  .intro_sq_ico
  {
    width: 4.5vh;
    height: 4.5vh;
    background-size: 65vh;
  }

  .intro_sq_bolt
  {
    width: 3.6vh;
  }

  .intro_sq_felt
  {
    width: 3.6vh;
  }

  #intro_logo
  {
    left:2.5vh;
  }

  #intro_play_btn
  {
    left: 7vh;
  }

  #top_hud_bar
  {
    top:0.29vh;
    width: 100%;
  }

  .sq_btn, .hud_btn
  {
    width: 5.32vh;
    height: 5.32vh;
  }

  .sq_btn
  {
    border-width: 0.17vh;
    border-radius: 1.25vh;
  }

  #panel_FAV
  {
    top: 8.73vh;
    left: 0.083vh;
    width: 19.12vh;
    min-height: 14.13vh;
    border-radius: 1.25vh;
    border-width: 0.2vh;
  }
  
  .popup_title
  {
    font-size: 2vh;
    top: 0.83vh;
    height: 5.82vh;
  }
  
  .fav_label_txt
  {
    width: 17.8vh;
    height: 5.1vh;
    font-size: 1.7vh;
    padding-left:0.8vh;
    padding-right: 0.8vh;
    padding-top: 1.3vh;
  }
  
  .fav_item_btn
  {
    width: 16.63vh;
    left: 1.25vh;
    border-radius: 1.25vh;
    border-width: 0.17vh;
    font-size: 1.66vh;
  }

  .fav_txt
  {
    width: 15.38vh;
  }
  
  .fav_input
  {
    font-size: 1.67vh;
  }

  #fav_edit_btns
  {
    height: 5.5vh;
  }
  
  .fav_edit_btn
  {
    top: 0.15vh;
    height: 3.825vh;
    width: 4.1vh;
    border-radius: 1.25vh;	
    border-width: 0.2vh;	
    background-size: 49.88vh;
  }

  .fav_button_icon
  {
    width: 3.3vh;
    height: 3.3vh;
  }

  #btn_icon_EDITFAV
  {
    background-size: 60vh;
  }

  #btn_icon_DELFAV
  {
    background-size: 50vh;
  }

  .fav_selected
  {
    font-size:1.83vh;
    border-width: 0.34vh;
  }

  #btn_EDITFAV
  {
    right: 3.4vh;
  }
  
  #btn_DELFAV
  {
    left: 3.4vh;
  }

  #btn_ADDFAV
  {
    font-size:1.83vh;
  }

  #btn_FAVINPUT
  {
    right: -5vh;
    background-size: 58vh;
  }

  #btn_FAVCANCEL
  {
    right: -9.25vh;
    background-size:51vh;
  }
  
  .fav_big_btn
  {
    width: 15.13vh;
    height: 5.32vh;
    font-size: 1.83vh;
    border-radius: 1.25vh;
    border-width: 0.17vh;
    background-size: 56.94vh;
    margin-top: 1.25vh;
    margin-bottom: 0.83vh;
    left: 2vh;
  }

  .fav_btn_enabled
  {
    border-width: 0.26vh;
  }
  
  #btn_FAV, #btn_SETTINGS,  #btn_BOLT
  {
    top:1.66vh;
  }

  #btn_BOLT, #btn_UNDO
  {
    top: 8.08vh;
  }
  
  #btn_DEL, #btn_FELT_TOG 
  {
    top:14.45vh;
  }

  #bottom_play_buttons
  {
    width: 100%;
    height: 13.3vh;
  }
  
  .top_meter
  {
    width: 16.37vh;
    height: 5.45vh;
    background-size: 64.92vh;
    font-size:2.08vh;
    padding-top:2.7vh;
    border-radius:0.83vh;
  }

  #meter_WIN
  {
    bottom:17vh;
  }

  #chip_selector_area
  {
    width: 46.314vh;
    height: 10.79vh;
  }

  .chip_selector_area
  {
    bottom: 12.5vh;
  }

  .top_button_icon
  {
    background-size: 59.85vh;
  }
  
  .ico_del
  {
    background-size: 56.53vh;
  }

  .side_elem
  {
    width: 16.49vh;
    height: 5.44vh;
    font-size: 2vh;
    border-radius: 1.25vh;
    background-size: 62.64vh;
  }

  #epic_win
  {
    width: 40.67vh;
    height: 33.2vh;
  }

  .epic_win 
  {
    background-size: 122.84vh;
  }

  .rside
  {
    right:0.76h;
    padding-right: 0.83vh;
  }
  
  .lside
  {
    left:0.76vh;
    padding-left: 0.83vh;
  }
  
  .top_row
  {
    top:1.66vh;
  }

  .bottom_row
  {
    bottom:0.5vh;
  }

  .bottom_bg
  {
    width: 17.04vh;
    height: 7.4vh;
    bottom: 0.083vh;
    background-size: 57.36vh;
  }

  #btn_PLAY
  {
    width: 23.28vh;
    height: 26.6vh;
    border-radius: 11.64vh;
  }
  
  .btn_PLAY_bg
  {
    background-size: 56.63vh;
  }

  .btn_txt_PLAY
  {
    line-height: 2.74vh;
    font-size: 3.16vh;
    width: 23.28vh;
    height: 16.6vh;
  }

  .btn_PLAY_txt_down
  {
    height:17.2vh;
  }

  #btn_txt_X2
  {
    padding-right: 3.33vh;
  }
  
  #btn_txt_CLEAR
  {
    padding-right: 0.83vh;
  }
  
  #btn_txt_UNDO
  {
    padding-left: 4.99vh;
  }
  
  #UNDO_guard
  {
    height: 4.6vh;
    width: 2.5vh;
    right: 11.8vh;
  }

  #UNDO_guard2
  {
    height: 2.75vh;
    width: 2.5vh;
    left: -1.66vh;
  }

  #X2_guard
  {
    height: 5.6vh;
    width: 2.5vh;
    left: 9.5vh;
  }

  #CLEAR_guard
  {
    height: 5.6vh;
    width: 2.5vh;
    right: 9.5vh;
  }

  .meter_bottom
  {
    height:4.48vh;
    width:13.6vh;
    padding-top:1.6vh;
    font-size:2vh;
    padding-left:1.66vh;
    padding-right:1.1vh;
  }
  
  #btn_icon_X2, #btn_icon_CLEAR, #btn_icon_X2_gray, #btn_icon_CLEAR_gray
  {
    background-size: 51.54vh;
    height: 3.33vh;
  }
  
  #btn_icon_X2, #btn_icon_X2_gray
  {
    width: 6.65vh;
    height: 3.74vh;
    left:1.66vh;
    top:0.42vh;
  }
  
  #btn_icon_CLEAR, #btn_icon_CLEAR_gray
  {
    width: 3.33vh;
    left: 5.1vh;
    top: 0.83vh;
  }

  #btn_icon_UNDO, #btn_icon_UNDO_gray
  {
    top: 0.723vh;
    background-size: 76.5vh;
  }

  .state_cycle_btn
  {
    right: 0.83vh;
    background-size: 65.67vh;
  }
  
  .check_on
  {
    background-size: 89.7vh;
  }

  .check_off
  {
    background-size: 89.7vh;
  }

  .window
  {
    font-size: 1.8vh;
  }

  .game_title_main
  {
    font-size: 3.2vh;
  }

  .game_title_sub
  {
    font-size: 2.3vh;
  }

  .table_header
  {
    font-size: 2vh;
  }
}


