:root {
  /*
    Default fathomd theme colors.
    Variables should be named by function and not by colors to allow new themes to be introduced later.
    New theme can be added with an extra :root specification, e.g.:
    @media (prefers-color-scheme: dark) {
      :root {}
    }

    TODO: This section is not complete! Complete it at a later time.
    After completion, we can get rid of super old packages like bootstrap, which cause us to not be able to get some updates.
  */

  --body-bg-color: 97, 99, 104;

  --header-text-color: 8, 61, 145;
  --title-text-color: 8, 61, 145;
  --badge-label-text-color: 8, 61, 145;
  --row-label-text-color: 8, 61, 145;
  --emphasized-text-color: 32, 125, 168;
  --loading-text-color: 8, 61, 145;
  --access-text-color: 8, 61, 145;
  --disabled-text-color: 97, 99, 104;

  --footer-text-color:  97, 99, 104;

  --box-shadow-color: 0, 0, 0;

  --container-border-color: 72, 72, 79;

  --content-text-color: 8, 61, 145;
  --content-description-text-color: 35, 36, 38;
  --content-bg-color: 251, 251, 251;

  --modal-header-bg-color: 224, 224, 224;
  --modal-footer-bg-color: 224, 224, 224;

  --table-summary-header-text-color: 255, 255, 255;
  --table-summary-header-bg-color: 8, 61, 145;
  --table-summary-title-text-color: 8, 61, 145;
  --table-summary-text-color: 0, 0, 0;
  --table-summary-border-color: 8, 61, 145;
  --table-summary-odd-row-bg-color: 255, 255, 255;
  --table-summary-even-row-bg-color: 247, 245, 245;

  --table-striped-text-color: 8, 61, 145;
  --table-striped-header-bg-color: 224, 224, 224;
  --table-striped-odd-row-bg-color: 255, 255, 255;
  --table-striped-even-row-bg-color: 242, 242, 242;
  --table-striped-footer-bg-color: 224, 224, 224;

  --table-sortable-header-text-color: 8, 61, 145;
  --table-sortable-header-bg-color: 224, 224, 224;

  --btn-primary-text-color: 255, 255, 255;
  --btn-primary-bg-color: 51, 121, 183;
  --btn-primary-border-color: 46, 109, 164;
  --btn-primary-hover-bg-color: 40, 96, 144;
  --btn-primary-hover-border-color: 32, 77, 116;

  --btn-submit-text-color: 0, 0, 0;
  --btn-submit-bg-color: 253, 194, 14;
  --btn-submit-border-color: 255, 236, 179;
  --btn-submit-hover-bg-color: 255, 191, 0;

  --btn-dashboard-create-text-color: 0, 0, 0;
  --btn-dashboard-create-bg-color: 253, 194, 14;
  --btn-dashboard-create-border-color: 255, 236, 179;
  --btn-dashboard-create-hover-text-color: 0, 0, 0;
  --btn-dashboard-create-hover-bg-color: 245, 173, 37;

  --btn-detail-route-link-text-color: 8, 61, 145;
  --btn-detail-route-link-border-color: 8, 61, 145;

  --btn-manage-list-text-color: 8, 61, 145;
  --btn-manage-list-border-color: 8, 61, 145;

  --summary-header-text-color: 255, 255, 255;
  --summary-header-link-text-color: 255, 255, 255;
  --summary-header-hover-text-color: 46, 167, 223;

  --game-info-header-text-color: 46, 167, 223;
  --game-info-description-text-color: 60, 61, 64;
  --game-info-bg-color: 239, 239, 239;
  --game-info-link-text-color: 46, 167, 223;

  --detailed-instructions-header-text-color: 0, 0, 0;
  --detailed-instructions-text-color: 0, 0, 0;
  --detailed-instructions-emphasized-text-color: 8, 61, 145;

  --game-parameter-text-color: 0, 0, 0;
  --game-parameter-highlight-text-color: 46, 167, 223;

  --nav-link-text-color: 8, 61, 145;
  --nav-link-active-border-color: 8, 61, 145;

  --option-link-text-color: 8, 61, 145;
  --option-link-active-text-color: 46, 167, 223;

  --error-text-color: 168, 13, 26;
  --error-background-color: 255, 231, 231;
  --error-icon-color: 250, 117, 90;
}

html, body {
  background-color: rgb(var(--body-bg-color));
}

body {
  min-width: 320px;
  min-height: 100vh;
}

h1 {
  font-size: 32px;
  font-weight: bold;
  color: rgb(var(--header-text-color));
}

h2 {
  font-size: 24px;
  font-weight: bold;
  color: rgb(var(--header-text-color));
}

h3 {
  font-size: 19px;
  font-weight: bold;
  color: rgb(var(--header-text-color));
}

h3.player-session-header {
  font-size: 24px;
  font-weight: bold;
  color: rgb(var(--header-text-color));
}

h4 {
  font-size: 16px;
  font-weight: bold;
  color: rgb(var(--header-text-color));
}

div {
  font-size: 16px;
  font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
}

span {
  font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
}

.font-ds-digit span {
  font-family: ds_digi;
}

.font-trebuchet-16 {
  font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
  font-weight: normal;
  color: #3c3d40;
}

a {
  font-size: 16px;
  font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
}

a.disabled {
  pointer-events: none;
  cursor: default;
}

.nav-tabs {
  border-bottom: none;
}

.nav-tabs > li:first-of-type > a {
  border-radius: 1rem 0 0 1rem;
}

.nav-tabs > li:last-of-type > a {
  border-radius: 0px 1rem 1rem 0;
}

.dashboard-nav li.nav-item {
  min-width: 7.5rem;
}

.dashboard-nav li.nav-item a {
  color: rgb(var(--disabled-text-color));
}

.dashboard-nav li.active.nav-item a {
  border-bottom: 2px solid rgb(var(--nav-link-active-border-color));
}

label {
  font-size: 16px;
}

legend {
  font-weight: bold;
}

.input-label {
  font-size: 16px;
}

.form-control {
  color: black;
  font-size: 16px;
  font-family: Cabin;
}

.logo-container {
  height: 70px;
  z-index: 100;
}

.logo-container a {
  display: block;
}

.logo-container .menu {
  position: relative;
  text-align: right;
  top: 1.125rem;
  right: 2.5rem;
  font-family: OpenSans;
  font-size: 1.25rem;
  line-height: 1.5;
}

.dropdown-menu {
  padding: 10px;
  border-radius: 13px;
}

.main-container-top {
  height: 100px;
}

.home-page-container {
  margin-top: 0px;
  font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
}

.home-page-container .ss-container {
  margin-top: 0px;
}

.fixed-login-container {
  max-width: 500px;
  margin-left:auto;
  margin-right: auto;
}

.ss-container {
  margin-top: 80px;
  padding: 30px;
  background-color: #fbfbfb;
  font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
}

.box-shadow {
  box-shadow: 0px 0px 8px rgba(var(--box-shadow-color), 0.15);
}

.btn {
  font-weight: bold;
  border-radius: .75rem;
  padding-top: .45rem;
  padding-bottom: .45rem;
  padding-left: .7rem;
  padding-right: .7rem;
}

.btn-primary {
  color: rgb(var(--btn-primary-text-color));
  background-color: rgb(var(--btn-primary-bg-color));
  border-color: rgb(var(--btn-primary-border-color));
  transition: box-shadow .2s ease-in-out;
}

.btn-primary:hover {
  background-color: rgb(var(--btn-primary-hover-bg-color));
  border-color: rgb(var(--btn-primary-hover-border-color));
  box-shadow: 0px 0px 5px rgb(var(--btn-primary-hover-bg-color));
}

.btn-submit {
  display: inline-block;
  align-items: center;
  color: rgb(var(--btn-submit-text-color));
  background-color: rgb(var(--btn-submit-bg-color));
  background-position: 0 0;
  border: 1px solid rgb(var(--btn-submit-border-color));
  box-sizing: border-box;
  transition: border .2s ease-in-out;
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;
  white-space: nowrap;
  word-break: break-word;
}

.btn-submit:active,
.btn-submit:hover,
.btn-submit:focus {
  background-color: rgb(var(--btn-submit-hover-bg-color));
}

.btn-detail-route-link {
  width: 100%;
  color: rgb(var(--btn-detail-route-link-text-color));
  border-color: rgb(var(--btn-detail-route-link-border-color));
  font-family: monospace;
  font-size: 14px;
  font-weight: bold;
}

.btn-manage-list {
  color: rgb(var(--btn-manage-list-text-color));
  border-color: rgb(var(--btn-manage-list-border-color));
}

.btn-dashboard-create {
  display: inline-block;
  color: rgb(var(--btn-dashboard-create-text-color));
  background-color: rgb(var(--btn-dashboard-create-bg-color));
  border: 1px solid rgb(var(--btn-dashboard-create-border-color));
  transition: border .2s ease-in-out;
  font-size: 16px;
  padding: 6px 12px;
  border-radius: 6px;
}

.btn-dashboard-create:active,
.btn-dashboard-create:hover,
.btn-dashboard-create:focus {
  color: rgb(var(--btn-dashboard-create-hover-text-color));
  background-color: rgb(var(--btn-dashboard-create-hover-bg-color));
}

.btn-login-linkedin {
  border: solid #b5c0ca 1px;
  border-radius: 6px;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
  color: #26272a;
}

.content-container {
  container-type: inline-size;
  container-name: content-container;
  margin-top: 95px;
  margin-left: 130px;
  margin-right: 130px;
  margin-bottom: 15px;
  max-width: 1600px;
  color: rgb(var(--content-description-text-color));
  background-color: rgb(var(--content-bg-color));
  border-radius: 8px;
  padding: 20px;
  font-size: 16px;
  line-height: 1.78;
  text-align: left;
}

.dashboard-container {
  padding: 30px;
}

.content-container .btn-submit {
  border-radius: 4px;
  background-color: #fdc20e;
}

.content-container .btn-submit:hover {
  border-radius: 4px;
  background-color: #f0b605;
}

.content-container .btn-submit:active {
  outline:none;
  border-radius: 4px;
  background-color: #f0b605;
}

.content-container .btn-submit:focus {
  outline:none;
  border-radius: 4px;
  background-color: #f0b605;
}

.content-container .button-divider {
	display: inline-block;
	width: 10px;
}

.content-container h1 {
  font-weight: 500;
  line-height: 1;
  text-align: left;
}

.summary-header-container {
  margin-top: 80px;
  margin-left: 110px;
  margin-right: 110px;
  padding: 15px;
  border-radius: 13px;
  margin-bottom: 15px;
  color: rgb(var(--summary-header-text-color))
}

.summary-header-container a {
  color: rgb(var(--summary-header-link-text-color));
}

.summary-header-container a:hover {
  color: rgb(var(--summary-header-link-hover-text-color));
}

.email-message-container div {
  font-size: 18px;
}

.game-intro-container {
  margin: 10px 0px;
}

.game-intro-container *:not(:first-child){
  margin-top: 10px;
}

.detailed-instructions {
  color: rgb(var(--detailed-instructions-text-color));
}

.detailed-instructions h3 {
  color: rgb(var(--detailed-instructions-header-text-color));
  font-size: 18px;
}

.detailed-instructions h4 {
  color: rgb(var(--detailed-instructions-header-text-color));
  font-size: 16px;
}

.detailed-instructions img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.detailed-instructions .faq-group {
  margin: 10px 0px;
  border-bottom: solid darkgray 1px;
}

.detailed-instructions .faq-group * {
  margin: 5px 0px;
}

.detailed-instructions .faq-label {
  font-weight: bold;
}

.detailed-instructions .color-emphasized-text {
  color: rgb(var(--detailed-instructions-emphasized-text-color));
  font-weight: bold;
}

.detailed-instructions .emphasized-text {
  color: rgb(var(--detailed-instructions-text-color));
  font-weight: bold;
}

.detailed-instructions .line-break{
  margin-bottom: 16px;
}

.badge-count-container *:not(:first-child) {
  margin-left: 10px;
}

.stripe-card-container {
  max-width: 400px;
  padding: 25px 15px 25px 15px;
  border: 3px solid rgb(var(--container-border-color));
  border-radius: 5px;
}

.stripe-card-container .inputContainer {
  padding: 2px 15px 2px 15px;
}

.footer-divider {
  margin-top: 50px;
  margin-bottom: 5px;
  height: 2px;
  color: #979797;
}

.footer-text {
  opacity: 0.4;
  font-family: Cabin;
  font-size: 16px;
  line-height: 2;
  text-align: left;
  color: #616368;
}

.session-info-column {
  float: left;
  padding: 15px;
}

.dashboard-title-column-left {
  color: rgb(var(--header-text-color));
}

.dashboard-title-column-left h2 {
  margin-top: 10px;
  font-size: 28px;
  white-space: nowrap;
}

.user-account-settings-options {
	background-color: #efefef;
	padding: 0px;
}

.user-account-settings-options a {
  color: rgb(var(--option-link-text-color));
  font-size: 24px;
  display: block;
  text-decoration: none;
  padding: 5px 10px 5px 10px;
}

.user-account-settings-options a.selected {
  color: rgb(var(--option-link-active-text-color))
}

.game-session-column {
  padding-left: 15px;
  padding-right: 15px;
  padding-top: 0px;
  padding-bottom: 0px;
}

div.game-session-column-left {
  padding-left: 15px;
  padding-right: 15px;
  padding-top: 0px;
  padding-bottom: 0px;
}

div.game-session-column-right {
  padding-left: 0px;
  padding-right: 15px;
  padding-top: 5px;
  padding-bottom: 5px;
}

.game-info-block {
	background-color: rgb(var(--game-info-bg-color));
	padding: 2px 20px 15px 20px;
	border-radius: 8px;
}

.game-info-block a {
	color: rgb(var(--game-info-link-text-color));
}

.game-info-block-title {
	color: rgb(var(--game-info-header-text-color));
}

.game-info-block-subtitle {
	color: #909293;
	line-height: 0.6;
	padding-bottom: 10px;
}

.game-info-block-lean {
  background-color: rgb(var(--game-info-bg-color));
	border-radius: 8px;
}

.game-info-block-lean .player-session-header {
  padding: 20px 0px 0px 15px;
}

.game-info-block-lean .detailed-instructions-link {
	color: rgb(var(--game-info-link-text-color));
  font-size: 18px;
  padding-left: 15px;
}

.dual-column-container {
  display: grid;
  grid-template-columns: auto auto;
  padding: 5px;
}

.game-parameter {
  color: rgb(var(--game-parameter-text-color));
}

.game-parameter .highlight {
  color: rgb(var(--game-parameter-highlight-text-color));
}

.game-progress-container {
  padding: 0px 10px;
  text-align: center;
}

.game-progress-container .progress {
  margin-bottom: 5px;
}

.game-progress-container .timer {
  text-align: right;
}

.player-round-status-container {
  display: grid;
  grid-template-columns: max(350px) auto;
  gap: 10px;
}

.session-notification {
  display: flex;
  align-items: center;
  justify-content: left;
  height: 100%;
}

.session-notification .alert {
  margin: 0 !important;
  position: static !important;
}

.player-decision-region-container {
  display: grid;
  grid-template-columns: minmax(0, 2fr) auto minmax(0, 1fr);
  gap: 5px;
  min-width: 0; /* Critical: allows grid to shrink */
}

.player-decision-region-container > * {
  min-width: 0; /* Prevents children from overflowing */
}

.player-decision-region-container p {
  margin: 0;
}

.round-status-block {
  border-radius:4px;
  background-color:#ECF0F1;
  font-size:20px;
  padding-left:10px;
  padding-right:10px;
  min-height:84px;
}

.round-status-block .timer-container {
  display: grid;
  grid-auto-flow: column;
  grid-template-columns: max-content auto;
  gap: 5px
}

.round-status-block .timer-text {
  font-family: ds_digi;
  font-size: 24px;
}

.ctrl-inline {
  width: auto;
  display: inline
}

table.table-striped {
	font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
	color: rgb(var(--table-striped-text-color));
}

table.table-striped thead {
	background-color: #e0e0e0;
	font-weight: bold;
}

table.table-striped thead td {
  padding-left: 10px;
  padding-right: 10px;
}

table.table-striped tbody td {
	border: 0;
	padding: 5px 10px 5px 10px;
}

table.table-striped tbody tr:nth-child(even){
	background-color: #f2f2f2;
}

table.table-striped tbody tr.table-row-red{
	background-color: #efd0d0 !important;
	color: #5e2626
}

table.table-striped tfoot {
	background-color: #e0e0e0;
	height: 80px;
}

table.table-summary {
  font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
  overflow: hidden;
  box-shadow: 0px 0px 8px rgba(var(--box-shadow-color), 0.15);
}

table.table-summary thead {
  font-weight: bold;
  text-align: left;
}

table.table-summary thead th {
  color: rgb(var(--table-summary-header-text-color));
  background-color: rgb(var(--table-summary-header-bg-color));
  padding: 5px 10px;
}

table.table-summary thead th h3 {
  color: rgb(var(--table-summary-header-text-color));
}

table.table-summary tbody {
  font-size: 15px;
  color: rgb(var(--table-summary-text-color));
  border-bottom: 8px solid rgb(var(--table-summary-border-color));
}

table.table-summary tbody tr {
  font-size: 15px;
  color: black;
  background-color: rgb(var(--table-summary-odd-row-bg-color))
}

table.table-summary tbody tr:nth-child(even){
	background-color: rgb(var(--table-summary-even-row-bg-color))
}

table.table-summary tbody td {
  border: 0;
  padding: 10px;
}

table.table-summary tbody td.dashboard-title div {
  font-size: 16px;
  color: rgb(var(--table-summary-title-text-color));
  font-weight: bold;
}

table.table-summary tbody td.dashboard-title a {
  font-size: 14px;
}

table.table-summary tbody td .mobile-header {
  font-size: 15px;
  font-weight: bold;
  color: rgb(var(--table-summary-title-text-color));
  text-align: left;
}

table.table-game-instructions tbody td.sequence {
	width: 60px;
}

table thead td span.custom-linebreak {
  display: table;
}

table.table-game-instructions tbody td.title {
	color: #000000;
	font-size: 18px;
	font-weight: bold;
}

table.table-game-instructions tbody td.detail {
	color: #909293;
	font-size: 16px;
}

table.table-review {
  width: 100%;
  font-size: 16px;
}

table.table-review td {
  padding: 2px 12px;
  vertical-align: top;
}

table.table-review td:first-child {
  width: 50%;
}

table.table-review td:last-child {
  width: 50%;
  text-align: left;
}

ul.table-cell-list {
  padding-top: 5px;
  padding-bottom: 5px;
}

.table-cell-list li {
  padding-top: 5px;
}

.dataTableFilterGroup label {
  margin-right: 5px;
}

.dataTableFilterGroup .input-group {
  padding: 5px;
}

.dataTableFilterGroup .select-group {
  padding: 5px;
}

.refresh {
  margin-left: 5px;
}

a.refresh {
  text-decoration: none;
}

.refresh::after {
  color: black;
  font-size: 18px;
  font-weight: bold;
  content: "⟳";
}

.modal-header {
  background-color: rgb(var(--modal-header-bg-color));
}

.modal-content div {
  font-size: 16px;
}

.modal-footer {
  background-color: rgb(var(--modal-footer-bg-color));
}

.modal-backdrop{
  opacity:0;
  transition:opacity .2s;
}

.modal-backdrop.in{
  opacity:.7;
}

.join-session-modal {
  position: relative;
  display: table;
  overflow-y: auto;
  overflow-x: auto;
  width: auto;
}

.admin-report-modal *:not(:last-child) {
  margin-bottom: 5px;
}

.admin-report-modal-record {
  border: 1px dotted rgb(var(--container-border-color));
  padding: 5px 10px;
}

.button-transparent {
  border: none;
  background-color: transparent;
  outline: none;
}

a.link-black {
  color:black;
  text-decoration:none;
}

a.link-black:hover {
  color:black;
  text-decoration:none;
}

a.link-black:active {
  color:black;
  text-decoration:none;
}

a.link-black:visited {
  color:black;
  text-decoration:none;
}

.fathomd-chart {
  width: 100%;
  height: 100%
}

.game-mark-fsg-ProfitRet, .game-mark-fsg-ProfitSup {
  font-weight: bold;
  font-size: 1.1em;
}

select.error{
  background-color:#ffe7e7;
}

label.error{
  color: rgb(var(--error-text-color));
}

input.error{
  background-color: #ffe7e7;
}

input.text-border-black {
  border: 1px solid black;
  padding: 10px 0px 10px 0px;
  text-align: center;
  width: 100%;
}

input.missing::placeholder {
  color: rgb(var(--error-text-color));
}

.content-circle-small {
	display: table-cell;
	border-radius: 50%;
	width: 34px;
	height: 34px;
	padding: 4px;
	background: #1e4789;
	color: #ffffff;
	text-align: center;
  vertical-align: middle;
  font-family: cabin;
}

.loading:after {
  overflow: hidden;
  display: inline-block;
  vertical-align: bottom;
  -webkit-animation: ellipsis steps(4, end) 1100ms infinite;
  animation: ellipsis steps(4, end) 1100ms infinite;
  content: "\2026";
  width: 0px;
}

.tooltip.right .tooltip-inner {
  max-width:310px;
  min-width: 175px;
  padding:3px 8px;
  color:#fff;
  text-align:left;
  background-color:#245973;
  border-radius:5px
}

.text-area-vertical {
  resize:vertical;
  min-height:200px;
  max-height:500px;
}

@keyframes ellipsis {
  to {
    width: 1.25em;
  }
}

@-webkit-keyframes ellipsis {
  to {
    width: 1.25em;
  }
}

.text-decoration-none {
  text-decoration: none;
}

.text-decoration-none-important {
  text-decoration: none !important;
}

.title-text {
  color: rgb(var(--title-text-color));
  font-weight: bold;
}

.badge-label-text {
  color: rgb(var(--badge-label-text-color));
  font-size: 18px;
}

.row-label-text {
  color: rgb(var(--row-label-text-color));
  font-size: 18px;
  font-weight: bold;
}

.emphasized-text {
  color: rgb(var(--emphasized-text-color));
  font-weight: bold;
}

.loading-text {
  color: rgb(var(--loading-text-color));
  font-size: 18px;
}

.access-text {
  color: rgb(var(--access-text-color));
  font-size: 18px;
}

.disabled-text {
  color: rgb(var(--disabled-text-color));
}

.error-text {
  color: rgb(var(--error-text-color));
  font-weight: bold;
}

.error-input {
  background-color: rgb(var(--error-background-color));
}

.font-color-black {
  color: black;
}

.font-color-black-important {
  color: black !important;
}

.font-color-fathomdlightblue {
	color: #2ea7df;
}

.font-color-fathomddarkblue {
	color: rgb(8, 61, 145);
}

.font-color-fathomddarkyellow {
  color: #fdc20e;
}

.font-color-sessioncodeblue {
  color: #00f0c0;
}

.font-color-white {
  color: white;
}

.font-color-instructiongray {
	color: #909293;
}

.font-color-instructiongray-important {
	color: #909293!important;
}

.font-bold {
  font-weight: bold;
}

.font-size-10 {
  font-size: 10px;
}

.font-size-14 {
  font-size: 14px;
}

.font-size-14-important {
  font-size: 14px !important;
}

.font-size-15 {
	font-size: 15px;
}

.font-size-15-important {
  font-size: 15px !important;
}

.font-size-16 {
  font-size: 16px;
}

.font-size-17 {
  font-size: 17px;
}

.font-size-18 {
  font-size: 18px;
}

.font-size-18-important {
  font-size: 18px !important;
}

.font-size-20 {
	font-size: 20px;
}

.font-size-20-important {
	font-size: 20px !important;
}

.font-size-22 {
  font-size: 22px;
}

.font-size-24 {
  font-size: 24px;
}

.font-size-26 {
	font-size: 26px;
}

.font-size-30 {
  font-size: 30px;
}

.font-size-1em {
	font-size: 1em;
}

.text-left {
	text-align: left;
}

.text-right {
  text-align: right;
}

.text-center {
	text-align: center;
}

.text-vert-top {
  vertical-align: top;
}

.text-vert-middle {
	vertical-align: middle;
}

.text-vert-middle-important {
	vertical-align: middle!important;
}

.text-vert-bottom {
  vertical-align: bottom;
}

.text-vert-bottom-important {
  vertical-align: bottom !important;
}

.padding-all-0 {
  padding: 0px;
}

.padding-all-0-important {
  padding: 0px !important;
}

.padding-top-0 {
  padding-top: 0px;
}

.padding-top-0-important {
  padding-top: 0px !important;
}

.padding-bottom-0 {
  padding-bottom: 0px;
}

.padding-bottom-0-important {
  padding-bottom: 0px !important;
}

.padding-left-0 {
  padding: 0px;
}

.padding-right-0 {
  padding: 0px;
}

.padding-all-5 {
  padding: 5px;
}

.padding-top-5 {
  padding-top: 5px;
}

.padding-bottom-5 {
  padding-bottom: 5px;
}

.padding-left-5 {
  padding-left: 5px;
}

.padding-left-5-important {
  padding-left: 5px!important;
}

.padding-right-5-important {
  padding-right: 5px!important;
}

.padding-right-5 {
  padding-right: 5px;
}

.padding-top-7 {
  padding-top: 7px;
}

.padding-left-8 {
  padding-left: 8px;
}

.padding-right-8 {
  padding-right: 8px;
}

.padding-all-10 {
  padding: 10px;
}

.padding-top-10 {
  padding-top: 10px;
}

.padding-bottom-10 {
  padding-bottom: 10px;
}

.padding-left-10 {
  padding-left: 10px;
}

.padding-right-10 {
  padding-right: 10px;
}

.padding-top-12 {
  padding-top: 12px;
}

.padding-bottom-12 {
  padding-bottom: 12px;
}

.padding-all-15 {
	padding: 15px;
}

.padding-all-15-important {
  padding: 15px !important;
}

.padding-top-15 {
  padding-top: 15px;
}

.padding-bottom-15 {
  padding-bottom: 15px;
}

.padding-left-15 {
  padding-left: 15px;
}

.padding-right-15 {
  padding-right: 15px;
}

.padding-left-20 {
  padding-left: 20px;
}

.margin-all-0 {
  margin: 0px;
}

.margin-all-0-important {
  margin: 0px !important;
}

.margin-top-0 {
  margin-top: 0px;
}

.margin-top-0-important {
  margin-top: 0px !important;
}

.margin-bottom-0-important {
  margin-bottom: 0px !important;
}

.margin-top-5 {
  margin-top: 5px;
}

.margin-top-5-important {
  margin-top: 5px !important;
}

.margin-bottom-5 {
  margin-bottom: 5px;
}

.margin-right-5 {
  margin-right: 5px;
}

.margin-top-10 {
  margin-top: 10px;
}

.margin-top-10-important {
  margin-top: 10px !important;
}

.margin-bottom-10 {
  margin-bottom: 10px;
}

.margin-top-15 {
  margin-top: 15px;
}

.margin-bottom-15 {
  margin-bottom: 15px;
}

.margin-top-80 {
  margin-top: 80px;
}

.margin-left-5 {
  margin-left: 5px;
}

.margin-left-20 {
  margin-left: 20px;
}

.background-color-white {
	background-color: #fbfbfb;
}

.background-color-gray {
  background-color: #e0e0e0
}

.background-color-lightgray {
  background-color: #eaeff3;
}

.background-color-errorpink {
  background-color:#ffe7e7;
}

.background-color-red {
  background-color:#db2014;
}

.border-1 {
  border: 1px solid;
}

.border-fathomddarkblue {
  border: 2px solid rgb(8, 61, 145);
}

.border-dashed-fathomddarkblue {
  border: 1px dashed rgb(var(8, 61, 145));
}

.border-top-fathomddarkblue {
  border-top: 2px solid rgb(var(8, 61, 145));
}

.border-yellow {
  border: 1px solid #fdc20e;
}

.width-1pct {
  width: 1%;
}

.width-10pct {
  width: 10%;
}

.width-15pct {
  width: 15%;
}

.width-20pct {
  width: 20%;
}

.width-40pct {
  width: 40%;
}

.width-50pct {
  width: 50%;
}

.width-60pct {
  width: 60%;
}

.width-70pct {
  width: 70%;
}

.width-75pct {
  width: 75%;
}

.width-80pct {
  width: 80%;
}

.width-90pct {
  width: 90%;
}

.width-100pct {
  width: 100%;
}

.min-width-100 {
  min-width: 100px;
}

.min-width-160 {
  min-width: 160px;
}

.min-width-180 {
  min-width: 180px;
}

.min-width-200 {
  min-width: 200px;
}

.min-width-250 {
  min-width: 250px;
}

.min-width-300 {
  min-width: 300px;
}

.min-width-360 {
  min-width: 360px;
}

.max-width-300 {
  max-width: 300px;
}

.max-width-360 {
  max-width: 350px;
}

.max-width-500 {
  max-width: 500px;
}

.max-width-600 {
  max-width: 600px;
}

.max-width-5pct {
  max-width: 5%;
}

.max-width-8pct {
  max-width: 8%;
}

.max-width-10pct {
  max-width: 10%;
}

.max-width-15pct {
  max-width: 15%;
}

.max-width-20pct {
  max-width: 20%;
}

.max-width-100pct {
  max-width: 100%;
}

.height-100pct{
  height: 100%;
}

.line-height-10px{
  line-height: 10px;
}

.display-block {
  display: block;
}

.display-inline {
  display: inline;
}

.display-inline-important {
  display: inline !important;
}

.display-inline-block {
  display: inline-block;
}

.display-inline-block-important {
  display: inline-block !important;
}

.display-table-cell {
  display: table-cell;
}

.hidden {
	display: none;
}

.wrap-nowrap {
  white-space: nowrap;
}

.cursor-pointer {
  cursor: pointer;
}

.font-ds-digit{
  font-family: ds_digi;
}

.font-ds-digit-bold{
  font-family: ds_digib;
}

.nvd3 .nv-axis path.domain {
  stroke-opacity: 1 !important;
  stroke-width: 1 !important;
}

.nvd3 .nv-axis.nv-x path.domain {
  stroke-opacity: .75 !important;
  stroke-width: 2 !important;
}

.sortArrow-up::after {
  font: 12px "Glyphicons Halflings";
  content: "\e253";
  padding-left: 3px;
}

.sortArrow-down::after {
  font: 12px "Glyphicons Halflings";
  content: "\e252";
  padding-left: 3px;
}

.loader {
  border: 16px solid #f3f3f3;
  border-top: 16px solid #b4b6b8;
  border-radius: 50%;
  width: 80px;
  height: 80px;
  animation: spin 2s linear infinite;
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

@font-face {
  font-family: ds_digi;
  src: url(/fonts/DS-DIGI.TTF);
}

@font-face {
  font-family: ds_digib;
  src: url(/fonts/DS-DIGIB.TTF);
}

@media (max-width: 480px){
  .player-round-status-container {
    gap: 0;
  }
}

@media (max-width: 767px) {
  /* MQ1 - Main container margins */
  .content-container {
    margin-top: 60px;
    margin-left: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    border-radius: 0px;
  }

  .summary-header-container {
    margin-left: 0px;
    margin-right: 0px;
  }

  .main-container-top {
    height: 20px;
  }

  .home-page-container {
    margin-top: 80px;
  }

  /* End MQ1 */

  div.panel-default {
    max-width: 100% !important;
    margin: 0px !important;
  }

  .game-session-column {
    padding-left: 5px;
    padding-right: 5px;
    padding-top: 0px;
    padding-bottom: 0px;
  }

  div.game-session-column-left {
    padding-left: 5px;
    padding-right: 5px;
  }

  div.game-session-column-right {
    padding-left: 5px;
    padding-right: 5px;
  }

  .player-round-status-container {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto;
    gap: 15px;
  }
}

@media (max-width: 991px) {
  /* MQ1 - Main container margins */

  .content-container {
    margin-left: 0px;
    margin-right: 0px;
  }

  .summary-header-container {
    margin-left: 0px;
    margin-right: 0px;
  }

  /* End MQ1 */

  /* MQ2 - Small to medium screen table properties */

  .table-mobile-handler thead th {
    display: none;
  }

  .table-mobile-handler tbody tr {
    display: block;
    padding: 10px;
  }

  .table-mobile-handler tbody tr .hidden-mobile {
    display: none;
  }

  .table-mobile-handler.table-summary tbody tr {
    border-top: 1px solid rgb(110, 110, 110);
  }

  .table-mobile-handler td {
    display: block;
    position: relative;
    width: 100%;
    text-align: left;
  }

  .table-mobile-handler div {
    line-height: 1;
  }

  table thead td span.custom-linebreak {
    display: inline;
  }

  /* End MQ2 */
}

@media (min-width: 768px) and (max-width: 991px) {
  .game-session-column {
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 0px;
    padding-bottom: 0px;
  }

  div.game-session-column-left {
    padding-left: 10px;
    padding-right: 10px;
  }

  div.game-session-column-right {
    padding-left: 10px;
    padding-right: 10px;
  }
}

@media (max-width: 992px) {
  .player-decision-region-container {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}

@media (min-width: 992px) {
  .verify-before-login-container {
    min-height: 315px;
  }

  .player-decision-region-container {
    grid-template-columns: minmax(0, 65fr) auto minmax(0, 35fr);
  }
}

@media (min-width: 992px) and (max-width: 1299px) {
  /* MQ1 - Main container margins */

  .content-container {
    margin-left: min(calc(50vw - 40%), 50px);
    margin-right: min(calc(50vw - 40%), 50px);
  }

  .summary-header-container {
    margin-left: min(calc(50vw - 40%), 30px);
    margin-right: min(calc(50vw - 40%), 30px);
  }

  /* End MQ1 */
}

@media (min-width: 1300px) and (max-width: 1599px) {
  /* MQ1 - Main container margins */

  .content-container {
    margin-left: min(calc(50vw - 40%), 60px);
    margin-right: min(calc(50vw - 40%), 60px);
  }

  .summary-header-container {
    margin-left: min(calc(50vw - 40%), 40px);
    margin-right: min(calc(50vw - 40%), 40px);
  }

  /* End MQ1 */
}

@media (min-width: 1600px) {
  /* MQ1 - Main container margins */

  .content-container {
    max-width: 1600px;
    margin-left: calc(50vw - 800px);
    margin-right: calc(50vw - 800px);
  }

  .summary-header-container {
    max-width: 1600px;
    margin-left: calc(50vw - 800px);
    margin-right: calc(50vw - 800px);
  }

  /* End MQ1 */

  .player-decision-region-container {
    grid-template-columns: minmax(0, 850px) auto minmax(0, 500px);
  }
}