canvas {
  display: block;
}

/* Hide scrollbar for Chrome, Safari and Opera */
div::-webkit-scrollbar {
  display: none;
}

p, div, input[type="radio"], input[type="text"] {

  -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Old versions of Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome, Edge, Opera and Firefox */
}

/* Invisible “Go Up” link */
.go-up-link {
  text-indent: -9999px;
  cursor: pointer;
}

/* Labels */
.input-label {
  color: #F2F2F2;
  font-family: 'Aeonik', sans-serif;
  font-size: 14px;
}

/* Numeric Inputs */
.input-field {
  background-color: #141414;
  color: #F2F2F2;
  border: 1px solid #5DC0D9;
  padding: 4px 8px;
  font-family: 'Aeonik', sans-serif;
}

/* Read-Only Numeric Inputs */
.input-field-readonly {
  background-color: #141414;
  color: #BBBBBB;
  border: 1px solid #999999;
  padding: 4px 8px;
  font-family: 'Aeonik', sans-serif;
}

/* Buttons */
.data-button {
  background-color: #5DC0D9;
  color: #F2F2F2;
  font-family: 'Druk Wide', sans-serif;
  border: none;
  border-radius: 4px;
  padding: 5px 12px;
  transition: background-color 0.2s, transform 0.1s;
}
.data-button:hover {
  background-color: #4AA0B9;
}
.data-button:active {
  transform: scale(0.95);
}

/* Checkboxes */
.checkbox {
  color: #F2F2F2;
  font-family: 'Aeonik', sans-serif;
  accent-color: #5DC0D9;
  transform: scale(1.1);
  margin-right: 8px;
}

input.slider {
  -webkit-appearance: none;
  width: 100%;
  height: 6px;
  background: #444444;
  outline: none;
  border-radius: 3px;
  margin: 0 8px;
}
input.slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #F2F2F2;
  border: 2px solid #262626;
  cursor: pointer;
  box-shadow: 0 2px 6px rgba(0,0,0,0.2);
  transition: background 0.2s;
}
input.slider::-moz-range-thumb {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #F2F2F2;
  border: 2px solid #262626;
  cursor: pointer;
  box-shadow: 0 2px 6px rgba(0,0,0,0.2);
  transition: background 0.2s;
}
input.slider::-ms-thumb {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #F2F2F2;
  border: 2px solid #262626;
  cursor: pointer;
  box-shadow: 0 2px 6px rgba(0,0,0,0.2);
  transition: background 0.2s;
}
/* Slider thumb hover effect */
input.slider::-webkit-slider-thumb:hover {
  background: #888888;
}
input.slider::-moz-range-thumb:hover {
  background: #888888;
}
input.slider::-ms-thumb:hover {
  background: #888888;
}
.tooltip {
  position: absolute;
  background: rgba(0, 0, 0, 0.8);
  color: #F2F2F2;
  padding: 6px;
  border-radius: 4px;
  font-family: 'Aeonik', sans-serif;
  font-size: 14px;
  z-index: 9500;
  white-space: nowrap;
  min-width: 150px;
  max-width: 400px;
}
.ledger {
  position: absolute;
  background: rgba(0, 0, 0, 0.8);
  color: #F2F2F2;
  padding: 20px;
  padding-top: 40px;
  border-radius: 4px;
  font-family: 'Courier', sans-serif;
  font-size: 12px;
  z-index: 9000;
  white-space: nowrap;
}
.ledger-title {
  position: absolute;
  color: #F2F2F2;
  padding: 20px;
  border-radius: 4px;
  font-family: 'Courier', sans-serif;
  font-size: 14px;
  z-index: 10000;
  white-space: nowrap;
}
.ledger-close {
  z-index: 10000;
}
.time-label {
  white-space: nowrap;
}

/* Step buttons for slider controls */
.step-button {
  background-color: #262626;
  color: #F2F2F2;
  padding: 4px 8px;
  border-radius: 4px;
  cursor: pointer;
  transition: background-color 0.2s;
}
.step-button:hover {
  background-color: #3A3A3A;
}

/* Time label display next to slider */
.time-label {
  color: #F2F2F2;
  font-family: 'Aeonik', sans-serif;
  font-size: 14px;
  white-space: nowrap;
}

th, td {
  color: #F2F2F2;
  padding-right: 20px;
}