:root {
  --white: rgb(255,255,255);
  --offwhite: rgb(200,222,235);
  --evenlightergray: rgb(177, 177, 177);
  --lightergray: rgb(93, 96, 97);
  --lightgray: rgb(77, 83, 84);
  --gray: rgb(51,56,57);
  --darkgray: rgb(40, 45, 46);
  --darkergray: rgb(24, 27, 28);
  --black: rgb(0,0,0);
  --lightblue: rgb(150,175,200);
  --babyblue: rgb(115,150,185);
  --slightlightblue: rgb(60,135,185);
  --blue: rgb(50,125,175);
  --slightdarkblue: rgb(35,80,110);
  --darkblue: rgb(25,69,100);
  --bluegrey: rgb(55,85,105);
  --backgroundblue: rgba(15,15,15, 1);
  --darkred: rgb(125,25,25);
  --red: rgb(200,50,50);
  --darkorange: rgb(213,146,31);
  --orange: rgb(250,125,0);
  --lightorange: rgb(250,145,40);
  --legendaryorange: #f6bd3a;
  --yellow: rgb(182, 179, 83);
  --green: rgb(50,200,50);
  --highlightertop: rgb(105,185,235);
  --highlighttop: rgb(80,155,205);
  --highlighterbottom: rgb(10,35,55);
  --highlightbottom: rgb(5,30,45);
}

.inline-icon {
  display: inline;
  width: 16px;
  height: 16px;
  margin: 0 0.125em;
  padding: 0;
  vertical-align: text-top;
}

/* || Links */
a {
  color: var(--darkblue);
  font-weight: bold;
}

a.nameClickable {
  font-weight:normal;
}

/*a:visited {
  color: var(--bluegrey);
  font-weight: bold;
}*/

/* General Styling */
html {
  background-color: var(--backgroundblue);
  scrollbar-color: var(--darkergray) var(--backgroundblue);
}

body {
  touch-action: manipulation;
  background-color: var(--backgroundblue);
  font-family: Arial, San-Serif;
  width: 100%;
  margin: 0;
  color:var(--white);
}

/* || Text Styles */
.maintext {
  color: var(--blue);
  font-size: 14px;
}

.smalltext {
  color: white;
  font-size: 12px;
}

.registertext,
.registertextbody,
.registertextbodydark {
  font-size: 14px;
}

.registertext {
  color: var(--blue);
}

.registertextbody {
  color: var(--white);
}

.registertraitsleft,
.registertraitsright {
  font-size: 14px;
  color: var(--white);
}

.registertraitsleft {
  text-align:right;
}

.registertraitsright {
  text-align:left;
}

.registertextbodydark {
  color: var(--offwhite);
}

.primary {
  color: var(--blue);
}

.registertextheader {
  color: var(--slightlightblue);
  font-size: 22px;
  font-weight: bold;
}

.nameClickable {
  text-decoration:underline;
  cursor:pointer;
}

.botName {
  color: var(--lightblue);
  font-weight: normal;
  margin-top: 10px;
}

#catnipReward {
  color: var(--green);
}

#treatReward {
  color: var(--orange);
}

/* || Form Styles */
.registerTd,
.setupTd,
.setupTd2 {
  width: 50%;
  text-align: center;
  padding: 0;
}

.setupTdPhp,
.setupTdPhpInner {
  text-align: center;
  padding: 10px;
  padding-bottom: 10px;
}

.form-control {
  height: 20px;
}

.invalid-feedback {
  color: var(--orange);
  font-size: 12px;
}

/* || Header Styles */
.titletext {
  color: var(--offwhite);
  font-size: 42px;
  text-align: center;
  font-weight: 600;
}

.headertext {
  color: var(--offwhite);
  font-size: 24px;
  text-align: center;
}

.pageheader1 {
  color: var(--offwhite);
  font-size: 24px;
}

.pageheader2 {
  color: var(--offwhite);
  font-size: 16px;
}

/* || Stats Styles */
.playername,
.breedname {
  font-size: 14px;
  text-align: center;
  font-weight: bold;
}

.playername {
  color: var(--orange);
}

.breedname {
  color: var(--white);
}

.topstats {
  color: white;
  font-size: 14px;
  text-align: center;
  cursor: pointer;
}

td span.tLevel {
  color: var(--orange);
  font-weight: bold;
}
td span.tExp {
  font-size:11px;
}

td div.barContainer {
  width: 100%;
  height: 4px;
  margin: auto;
  background-color: var(--bluegrey);
}

.masteryBar {
  width:100%;
  height:16px;
  background-color: var(--backgroundblue);
  border: 1px solid var(--blue);
}

td div.levelBar,
td div.healthBar {
  height: 4px;
  background-color: var(--orange);
}

/* || Button Styles */
.blue-button,
.btn-primary,
.purchase-btn,
.purchase-btn:disabled,
button:disabled {
  background: var(--darkblue);
  background: linear-gradient(0deg, var(--darkblue) 0%, var(--blue) 100%);
  padding: 3px 12px;
  margin: 10px 2px 10px;
  color: white;
  font-weight: bold;
  font-size: 16px;
  cursor: pointer;
}

.blue-button {
  border: 1px solid var(--blue);
  border-color: var(--highlighttop) var(--highlightbottom) var(--highlightbottom) var(--highlighttop);
  text-decoration: none;
}

.blue-button:hover {
  border: 1px solid var(--white);
}

.blue-button:visited, .red-button:visited {
  color: white;
}

.red-button {
  background: var(--darkred);
  background: linear-gradient(0deg, var(--darkred) 0%, var(--red) 100%);
  padding: 3px 12px;
  margin: 10px 2px 10px;
  color: white;
  font-weight: bold;
  font-size: 16px;
  cursor: pointer;
  border: 1px solid var(--red);
  border-color: var(--red) var(--darkred) var(--darkred) var(--red);
  text-decoration: none;
}

.red-button:hover {
  border: 1px solid var(--darkred);
}

.red-button:disabled {
  background: var(--darkred);
  background: linear-gradient(0deg, var(--darkred) 0%, var(--red) 100%);
  padding: 3px 12px;
  margin: 10px 2px 10px;
  color: white;
  font-weight: bold;
  font-size: 16px;
  cursor: pointer;
}

.btn-primary {
  border: 2px solid #576264;
  border-color: var(--highlighttop) var(--highlightbottom) var(--highlightbottom) var(--highlighttop);
  background-repeat: no-repeat;
  touch-action: manipulation;
}

.btn-primary:hover {
  background: var(--slightdarkblue);
  background: linear-gradient(0deg, var(--slightdarkblue) 0%, var(--slightlightblue) 100%);
  border: 2px solid #576264;
  border-color: var(--highlightertop) var(--highlighterbottom) var(--highlighterbottom) var(--highlightertop);
}

button.fightButton {
  background: rgb(161,123,50);
  background: linear-gradient(0deg, var(--red) 0%, var(--orange) 50%);
  color: var(--backgroundblue);
  padding: 3px 12px;
  font-weight: bold;
  border: 2px solid var(--blue);
  border-color: var(--lightorange) var(--darkred) var(--darkred) var(--lightorange);
  font-variant: small-caps;
  font-size: 16px;
  touch-action: manipulation;
}

button.fightButton:hover {
  cursor: pointer;
}

button.fightButton:active {    
  cursor: pointer;
  border-color: var(--darkred) var(--lightorange) var(--lightorange) var(--darkred);
}

button.runButton {
  background: var(--darkblue);
  background: linear-gradient(0deg, var(--darkblue) 0%, var(--blue) 100%);
  color: var(--backgroundblue);
  padding: 3px 12px;
  font-weight: bold;
  border: 2px solid var(--blue);
  border-color: var(--highlighttop) var(--highlightbottom) var(--highlightbottom) var(--highlighttop);
  font-variant: small-caps;
  font-size: 16px;
}

button.runButton:hover {
  cursor: pointer;
}

button.runButton:active {
  cursor: pointer;
  border-color: var(--highlightbottom) var(--highlighttop) var(--highlighttop) var(--highlightbottom);
}


button.nextBotButton {
  background: rgb(161,123,50);
  background: linear-gradient(0deg, var(--red) 0%, var(--orange) 50%);
  color: var(--backgroundblue);
  padding: 3px 12px;
  font-weight: bold;
  border: 2px solid var(--blue);
  border-color: var(--lightorange) var(--darkred) var(--darkred) var(--lightorange);
  font-variant: small-caps;
  font-size: 16px;
}

button.nextBotButton:hover {
  cursor: pointer;
}

button.nextBotButton:active {
  cursor: pointer;
  border-color: var(--darkred) var(--lightorange) var(--lightorange) var(--darkred);
}


button#idrmButton {
  background: rgb(161,123,50);
  background: linear-gradient(0deg, var(--red) 0%, var(--orange) 50%);
  color: var(--backgroundblue);
  padding: 3px 12px;
  font-weight: bold;
  border: 2px solid var(--blue);
  border-color: var(--lightorange) var(--darkred) var(--darkred) var(--lightorange);
  font-variant: small-caps;
  font-size: 16px;
  width: 152.44px;
  margin-top: 12px;
}

button#idrmButton:hover {
  cursor: pointer;
}

button#idrmButton:active {
  cursor: pointer;
  border-color: var(--darkred) var(--lightorange) var(--lightorange) var(--darkred);
}


/* || Navigation Styles */
a.goldButton {
  text-decoration: none;
  color: white;
}

.topRight {
  position:fixed;
  top: 10px;
  right: 5px;
}

span.navTabUnselected,
span.navTabHover,
span.currentNavTab {
  display: inline-block;
  background: var(--darkgray);
  background: linear-gradient(0deg, var(--darkgray) 0%, var(--lightgray) 100%);
  font-variant: small-caps;
  padding: 3px 6px;
  margin: 0px 0px 2px 0px;
  color: var(--white);
  font-weight: bold;
  font-size: 15px;
  cursor: pointer;
}

span.navTabUnselected {
  border: 1px solid var(--gray);
  border-color: var(--lightgray) var(--darkgray) var(--darkgray) var(--lightgray);
}

span.navTabHover {
  border: 1px solid var(--white);
}

span.currentNavTab {
  background: rgb(--darkgray);
  background: linear-gradient(0deg, var(--darkgray) 0%, var(--lightgray) 100%);
  border: 1px solid var(--white);
  text-align: center;
}

/* || Other Styles */
.linebreak {
  height: 1px;
  background-color: #222;
  margin: 5px 0 20px 0;
}

.spacer {
  height: 20px;
  width: 100%;
  margin: 0;
}

.invalid-feedback {
  color: var(--red);
  font-size: 12px;
}

.titletext {
  color: var(--offwhite);
  font-size: 42px;
  text-align: center;
  font-weight: 600;
  margin-top: 20px;
  margin-bottom: 20px;
}

.headertext {
  color: var(--offwhite);
  font-size: 24px;
  text-align: center;
}

.playername {
  color: var(--orange);
  font-size: 14px;
  text-align: center;
  font-weight: bold;
}

.breedname {
  color: var(--white);
  font-size: 14px;
  text-align: center;
  font-weight: bold;
}

.topstats {
  color: white;
  font-size: 14px;
  text-align: center;
}

/* || Table Styles */
td span.tLevel {
  color: var(--orange);
  font-weight: bold;
}

td div.barContainer {
  width: 50%;
  height: 4px;
  margin: auto;
  background-color: var(--bluegrey);
}

td div.healthBar,
td div.levelBar {
  height: 4px;
  background-color: var(--orange);
}

/* || Prop Table Styles */

.propcolImg,
.itemcolImg {
  padding-left:48px;
  width:128px;
}

.jobcolDesc {
  padding-left:48px;
  width:256px;
}

.propcolDesc,
.jobcolReqs {
  padding-left: 5%;
  vertical-align:middle;
  text-align:left;
}

.itemcolDesc,
.jobcolReqs {
  width: calc(100% - 390px);
}

.itemcolBuy {
  padding-right:10px;
}

.propcolBuy,
.jobcolBuy {
  width:256px;
  vertical-align:middle;
  text-align:center;
}

.propQty,
.itemQty {
  color: var(--green);
  margin-top: 0;
  font-size: 14px;
  text-align: center;
}



.tooltip {
  position: absolute;
  background-color: rgba(0, 0, 0);
  color: white;
  padding: 10px;
  border: 2px solid;
  border-color: var(--blue) var(--darkblue) var(--darkblue) var(--blue);
  z-index: 99999;
  max-width:320px;
}

.ui-tooltip {
  position: absolute;
  background-color: rgba(0, 0, 0);
  color: white;
  padding: 10px;
  border: 2px solid;
  border-color: var(--blue) var(--darkblue) var(--darkblue) var(--blue);
  z-index: 9999;
  max-width:320px;
}

.linebreak-gray {
  height: 1px;
  background-color: #888;
  margin: 5px 0 20px 0;
}

/* || Profiles */

.profileCol {
  text-align:center;
  padding:1%;
}

/* || Image Styles */

.itemGrid {
display: flex;
flex-wrap: wrap;
padding-left:32px;
}

.item {
margin: 8px;
padding: 2px;
box-sizing: border-box;
text-align: center;
}

.itemPropsGrid {
display: flex;
flex-wrap: wrap;
justify-content: center;
}

.itemProps {
padding: 6px;
box-sizing: border-box;
text-align: center;
}

.itemDescStats {
  color: var(--orange);
  font-weight: bold;
  font-size:14px;
}

.propQuantity,
.itemQuantity {
font-size: 11px;
color: var(--white);
}

.icon_64 {
/*border: 2px solid;
border-color: var(--offwhite) var(--bluegrey) var(--bluegrey) var(--offwhite);*/
width: 64px;
height: 64px;
}

.icon_96 {
/*border: 2px solid;
border-color: var(--offwhite) var(--bluegrey) var(--bluegrey) var(--offwhite);*/
width:96px;
height:96px;
}

.icon_128 {
  /*border: 3px solid;
  border-color: var(--offwhite) var(--bluegrey) var(--bluegrey) var(--offwhite);*/
  width: 128px;
  height: 128px;
  /*border-color: var(--bluegrey) var(--highlightbottom) var(--highlightbottom) var(--bluegrey);*/
}
.icon_128_2 {
  /*border: 2px solid;
  border-color: var(--offwhite) var(--bluegrey) var(--bluegrey) var(--offwhite);*/
  width: 128px;
  height: 128px;
  /*border-color: var(--bluegrey) var(--highlightbottom) var(--highlightbottom) var(--bluegrey);*/
}

.icon_256 {
  /*border: 3px solid;
  border-color: var(--offwhite) var(--bluegrey) var(--bluegrey) var(--offwhite);*/
  width: 256px;
  height: 256px;
  /*border-color: var(--bluegrey) var(--highlightbottom) var(--highlightbottom) var(--bluegrey);*/
}

.skill_48 {
  border:none;
  width:48px;
  height:48px;
}

.skill_64 {
border:none;
width:64px;
height:64px;
}

.skill_96 {
border:none;
width:96px;
height:96px;
}

@media (prefers-color-scheme: dark) {
  .skill_48, .skill_64, .skill_96 {
    filter: invert(0);
  }
}

.tooltipBox {
  position: fixed;
  display: none;
  z-index: 9999;
  padding: 8px;
  border-radius: 4px;
}

@keyframes pulseAnimation {
0% { color: var(--white); }
50% { color: var(--orange); }
100% { color: var(--white); }
}


.floating-block {
display: none;
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
background-color: #fff;
padding: 20px;
border-radius: 4px;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
z-index: 9999;
}

.floating-block-content {
display: flex;
align-items: center;
justify-content: space-between;
}

#popup-close {
background-color: #ddd;
border: none;
padding: 8px 16px;
border-radius: 4px;
cursor: pointer;
}



/* || Skill containers */

.skill-container {
display: block;
width: 320px;
}

.skill-grid-item {
width: 64px;
height: 64px;
/*outline: 1px solid var(--offwhite);*/
box-shadow: rgb(255 255 255 / 0%) 0px 5px 15px -7px inset, rgb(0 0 0 / 25%) 0px 0px 16px 4px inset;
text-align:center;
padding-top:62px;
box-sizing: border-box;
margin: 4px;
}

.skill-icon {
  width: 64px !important;
  height: 64px !important;
}

.skill-icon-frame {
  position: relative;
  display: inline-block;
}

.skill-icon-frame img {
  display: block; /* remove inline whitespace/line-height issues */
}

.skill-icon::after, .skill-icon-frame::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  box-shadow: inset 2px 2px 2px 0px rgb(69 69 69 / 34%), inset -2px -2px 2px rgb(0 0 0 / 66%);
}

.skill-o-selected {
outline: 1px solid var(--orange);
}

.skill-b-selected{
outline: 1px solid var(--blue);
}

.skill-top-row,
.skill-middle-row,
.skill-bottom-row {
display: flex;
justify-content: center;
margin-bottom: 16px;
}

.grid-text {
top: 50%;
left: 50%;
font-size:11px;
transform: translate(-50%, -50%);
}

.noItems {
  color:var(--white);
}




/* POP UP WINDOWS */

.popup-container {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.2);
  z-index: 9999;
  pointer-events:none;
}

.popup-content {
  position: absolute;
  top: 35%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: var(--backgroundblue);
  padding: 20px 40px;
  border: 2px solid var(--blue);
  pointer-events: auto;
}

button.popupCloseBtn {
  background: rgb(161,123,50);
  background: linear-gradient(0deg, var(--red) 0%, var(--orange) 50%);
  color: var(--backgroundblue);
  padding: 3px 12px;
  font-weight: bold;
  border: 2px solid var(--blue);
  border-color: var(--lightorange) var(--darkred) var(--darkred) var(--lightorange);
  font-variant: small-caps;
  font-size: 16px;
  margin: 0 auto;
}

button.popupCloseBtn:hover {
  cursor: pointer;
  border-color: var(--lightorange) var(--darkred) var(--darkred) var(--lightorange);
}

.boss-rewards {
  display: flex;
  justify-content: space-between;
  align-items: center;
  text-align: center;
  flex-wrap: wrap;
  padding: 16px 0 16px 0;
}

.boss-rewards:after {
  content: "";
  display: table;
  clear: both;
  align-items: center;
}

#treatReward {
  padding-right: 0;
}



@media (prefers-color-scheme: dark) {
  img {
    filter: invert(0) !important;
  }
}