.vueAppCode pre {
    border-top: solid gray 1px;
    border-bottom: solid gray 1px;
    border-right: solid gray 1px;
}
.vueAppCode .codeTab {
    display: inline-block;
    position: relative;
    top: 15px;
    left: 4px;
    border-radius: 7px 7px 0px 0px;
    padding: 0px 12px;
    border-width: 1px 1px 0px 1px;
    border-color: darkgray;
    color: #606060;
    margin: 0;
    cursor: pointer;
}
.vueAppCode .codeTab-active {
    background-color: white;
    z-index: 1;
    top: 16px;
    color: black;
}
.darkpagetheme .vueAppCode .codeTab-active {
    background-color: rgb(21,32,43);
    color: #ddd;
}
.vueAppCode .codeTab:hover:not(.codeTab-active) {
    background-color: #dcdcdc; /* Slightly darker background */
    transition: background-color 0.3s ease; /* Smooth transition */
}

.svgSection, .svgSectionArray {
    cursor: pointer;
}
.svgSection text.svgExplainText, 
.svgSectionArray text.svgExplainText {
    font-weight: bold;
    fill: #C8C8C8;
}
.svgSection text.svgIndexText {
    fill: #C8C8C8;
}
.svgSection rect{
    fill: none;
}
.svgSection path.behind, 
.svgSectionArray path.behind {
    stroke: white;
    stroke-width: 4;
    fill: none;
    opacity: 0.5;
}
.darkpagetheme .svgSection path.behind,
.darkpagetheme .svgSectionArray path.behind {
    stroke-width: 2;
}
.svgSection path.front, .svgSectionArray path.front {
    stroke: gray;
    stroke-width: 1;
    fill: none;
    opacity: 0.5;
}
.svgSection-hover rect {
    fill: lightyellow; /*rgb(252, 252, 113);*/
}
.svgSection-hover text.svgExplainText, .svgSectionArray-hover text.svgExplainText {
    font-weight: bold;
    fill: gray;
}
.darkpagetheme .svgSectionArray-hover text.svgExplainText {
    fill: #ddd;
}
.svgSection-hover text.svgIndexText {
    fill: gray;
}
.svgSection-hover path.behind{
    stroke: lightyellow;
    stroke-width: 6;
    fill: none;
}
.svgSection-hover path.front{
    stroke: black;
    stroke-width: 1;
    fill: none;
}
.svgSectionArray-hover path.behind{
    stroke-width: 6;
    fill: none;
}
.darkpagetheme .svgSection-hover path.behind,
.darkpagetheme .svgSectionArray-hover path.behind {
    stroke-width: 4;
}
.svgSectionArray-hover path.front{
    stroke: black;
    stroke-width: 1;
    fill: none;
}
.svgSection-active rect {
    fill: rgb(254, 254, 169); /*rgb(252, 252, 113);*/
}
.svgSection .label,
.svgSectionArray .label {
    fill: lightgray;
    stroke-width: 2;
    transition: fill 0.1s ease-in-out;
}
.svgSection-hover .label,
.svgSectionArray-hover .label {
    fill: gainsboro;
}
.svgSection-active .label,
.svgSectionArray-active .label {
    fill: white;
}
.svgSection-active text.svgExplainText, .svgSectionArray-active text.svgExplainText {
    font-weight: bold;
    fill: black;
}
.svgSection-active text.svgIndexText {
    fill: black;
}
.darkpagetheme .svgSectionArray-active text.svgExplainText {
    fill: white;
}
.svgSection-active path.behind {
    stroke: rgb(254, 254, 169);
    stroke-width: 6;
    fill: none;
}

.svgSection-active path.front{
    stroke: black;
    stroke-width: 2;
    fill: none;
}
.svgSectionArray-active path.behind{
    stroke-width: 6;
    fill: none;
}
.darkpagetheme .svgSection-active path.behind,
.darkpagetheme .svgSectionArray-active path.behind {
    stroke-width: 4;
}
.svgSectionArray-active path.front{
    stroke: black;
    stroke-width: 2;
    fill: none;
}

/* flowchart-code styling */
#vueApp_loopDice .codeTab,
#vueApp_ifImg .codeTab {
    display: inline-block;
    position: relative;
    top: 0px;
    left: 0px;
    border-radius: 7px 7px 0px 0px;
    padding: 0px 12px;
    border-width: 1px 1px 0px 1px;
    border-color: #606060;
    color: #606060;
    margin: 0;
    cursor: pointer;
    background-color: #E7E9EB;
}
.darkpagetheme #vueApp_loopDice .codeTab,
.darkpagetheme #vueApp_ifImg .codeTab {
    border-color: #ddd;
}
#vueApp_loopDice .codeTab-active,
#vueApp_ifImg .codeTab-active {
    top: 2px;
    left: 0px;
    color: black;
    border-color: black black white black;
    background-color: white;
}
.darkpagetheme #vueApp_loopDice .codeTab-active,
.darkpagetheme #vueApp_ifImg .codeTab-active {
    border-color: #ddd;
    color: #ddd;
    background-color: rgb(21, 32, 43);
}
#vueApp_loopDice .contentDiv,
#vueApp_ifImg .contentDiv {
    border-color: black;
    border: solid black 1px;
    display: inline-block;
    padding: 20px;
    border-radius: 0px 7px 7px;
    background-color: white;
}
.darkpagetheme #vueApp_loopDice .contentDiv,
.darkpagetheme #vueApp_ifImg .contentDiv {
    border-color: #ddd;
    background-color: rgb(21, 32, 43);
}
#vueApp_loopDice .arrowhead,
#vueApp_loopDice .txtBoolean,
#vueApp_ifImg .arrowhead,
#vueApp_ifImg .txtBoolean {
    stroke: black;
    fill: black;
}
.darkpagetheme #vueApp_loopDice .arrowhead,
.darkpagetheme #vueApp_loopDice .txtBoolean,
.darkpagetheme #vueApp_ifImg .arrowhead,
.darkpagetheme #vueApp_ifImg .txtBoolean {
    stroke: #ddd;
    fill: #ddd;
}
#vueApp_loopDice .arrow,
#vueApp_ifImg .arrow {
    stroke: black;
}
.darkpagetheme #vueApp_loopDice .arrow,
.darkpagetheme #vueApp_ifImg .arrow {
    stroke: #ddd;
}
#vueApp_loopDice .flowbox,
#vueApp_ifImg .flowbox {
    stroke: black;
}
.darkpagetheme #vueApp_loopDice .flowbox,
.darkpagetheme #vueApp_ifImg .flowbox {
    stroke: #ddd;
}
.svgCode {
    font-family: Consolas, 'Source Code Pro', Menlo, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
}
.svgExplainText{
    font-family: veranda, sans-serif;
    font-size: 17px;
}

/* operators styling */
#main a[id] {
    position: relative;
    top: -100px;
  }
  .funGame .w3-example {
    padding: 8px 20px;
    margin: 24px -20px;
  }
  .funGame p {
      margin: 0px;
      text-align: center;
  }
  .funGame .alignRight {
      text-align: right;
  }
  .funGame .textBold {
      font-weight: bold;
  }
  .funGame .dataDisplay p {
      text-align: center; 
      font-family: Consolas,Menlo,"courier new",monospace; 
      font-size: large;
  }
  .funGame .rightAlign p {
      text-align: right;
  }
  .funGame .bit {
    cursor: pointer;
    text-decoration: none;
  }
  .funGame .bit:hover {
      text-decoration: underline;
  }
  .funGame .bit.noUnderline:hover {
    text-decoration: none;
  }
  .funGame .w3-codespan {
    font-size: x-large;
    box-shadow: 0 0 0px 0 rgba(0, 0, 0, 0);
    transition: box-shadow 0.2s, opacity 0.2s;
    -webkit-user-select: none;  /* Chrome/Safari */
    -moz-user-select: none;     /* Firefox */
    -ms-user-select: none;      /* IE/Edge */
    user-select: none;          /* Standard */
  }
  .funGame .w3-codespan.hoverable:hover, 
  .funGame .w3-codespan.operatorShadow {
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.5);
  }
  .darkpagetheme .funGame .w3-codespan.hoverable:hover, 
  .darkpagetheme .funGame .w3-codespan.operatorShadow {
      box-shadow: 0 0 10px 0 rgba(255, 255, 255, 0.5);
  }
  .funGame .w3-codespan.resultActive {
      box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.5);
      color: #04AA6D;
  }
  .darkpagetheme .funGame .w3-codespan.resultActive {
      box-shadow: 0 0 10px 0 rgba(255, 255, 255, 0.5);
  }
  .funGame hr {
      width: 95%;
      margin: 20px auto;
  }
  .funGame .w3-codespan span {
      padding: 0 2px;
  }
  .funGame .disabledRow, 
  .funGame .disabledRow .w3-codespan,
  .funGame .disabledBit {
    opacity: 0.5;
    pointer-events: none; /* Disables clicking */
    color: gray;
  }