.main-worktime-balance {
  --worktime-balance-offset-x: 15px;
  --worktime-balance-offset-y: 10px;

  position: relative;
  padding: var(--worktime-balance-offset-y) var(--worktime-balance-offset-x);
  background-color: #f0f0f0;
}

.main-worktime-balance .main-worktime-balance__title {
  margin-top: 0;
  margin-bottom: 10px;
  font-family: 'Conv_GothaProNarMed', sans-serif;
  font-size: 20px;
  font-weight: 700;
  color: inherit;
}

.main-worktime-balance .main-worktime-balance__title a {
  color: inherit;
  text-decoration: none;
}

.main-worktime-balance .main-worktime-balance__description {
  margin-top: 0;
  margin-bottom: 1em;
}

.main-worktime-balance .main-worktime-balance__description a {
  color: inherit;
  text-decoration: underline;
  transition: color 0.15s ease-in-out;
}

.main-worktime-balance .main-worktime-balance__description a:hover {
  color: var(--color-red);
}

.main-worktime-balance .main-worktime-balance__selector {
  display: flex;
  gap: 0.5em;
}

.main-worktime-balance .main-worktime-balance__input {
  padding: 6px;
  border: 1px solid #cccccc;
}

.main-worktime-balance .main-worktime-balance__table {
  width: calc(100% + calc(var(--worktime-balance-offset-x) * 2));
  margin: 0 calc(var(--worktime-balance-offset-x) * -1) calc(var(--worktime-balance-offset-y) * -1) calc(var(--worktime-balance-offset-x) * -1);
  font-size: 12px;
  border-collapse: collapse;
}

.main-worktime-balance .main-worktime-balance__table td,
.main-worktime-balance .main-worktime-balance__table th {
  padding: 8px;
  text-align: center;
  border-right: 1px solid #dddddd;
  border-bottom: 1px solid #dddddd;
}

.main-worktime-balance .main-worktime-balance__table tr:first-child td,
.main-worktime-balance .main-worktime-balance__table tr:first-child th {
  border-top: 1px solid #dddddd;
}

.main-worktime-balance .main-worktime-balance__table td:first-child,
.main-worktime-balance .main-worktime-balance__table th:first-child {
  border-left: 1px solid #dddddd;
}

.main-worktime-balance .main-worktime-balance__table thead th,
.main-worktime-balance .main-worktime-balance__table thead td {
  font-weight: 700;
  color: var(--color-secondary);
  background-color: var(--color-primary);
}

.main-worktime-balance .main-worktime-balance__table tbody td,
.main-worktime-balance .main-worktime-balance__table tbody th {
  background-color: #ffffff;
  transition: background-color 0.15s ease-in-out;
}

.main-worktime-balance .main-worktime-balance__row.main-worktime-balance__row_current td,
.main-worktime-balance .main-worktime-balance__row.main-worktime-balance__row_current th {
  background-color: #f0f0f0;
}

.main-worktime-balance .main-worktime-balance__table tbody tr:hover th,
.main-worktime-balance .main-worktime-balance__table tbody tr:hover td {
  background-color: rgba(0, 0, 0, 0.15);
}

.main-worktime-balance .main-worktime-balance__table thead th span {
  color: var(--color-red);
}

.main-worktime-balance__current {
  margin-top: 0.5em;
  margin-bottom: 0.5em;
  font-size: 13px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.15s ease-in-out;
}

.main-worktime-balance__current_visible {
  opacity: 1;
  pointer-events: all;
}

.main-worktime-balance__current button {
  font-family: inherit;
  font-size: inherit;
  text-decoration: underline;
  border-width: 0;
  background-color: transparent;
  cursor: pointer;
  transition: color 0.15s ease-in-out;
}

.main-worktime-balance__current button:hover {
  color: var(--color-red);
}

.main-worktime-balance .main-worktime-balance__loader {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(0, 0, 0, 0.15);
  cursor: wait;
  opacity: 0;
}

.main-worktime-balance .main-worktime-balance__loader.main-worktime-balance__loader_showing,
.main-worktime-balance .main-worktime-balance__loader.main-worktime-balance__loader_hiding {
  animation-name: pro1c-rates-loader;
  animation-duration: 0.15s;
  animation-timing-function: ease-in-out;
}

.main-worktime-balance .main-worktime-balance__loader.main-worktime-balance__loader_hiding {
  animation-direction: reverse;
}

.main-worktime-balance .main-worktime-balance__loader.main-worktime-balance__loader_hidden {
  display: none;
}

.main-worktime-balance .main-worktime-balance__loader.main-worktime-balance__loader_shown {
  opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
  .main-worktime-balance .main-worktime-balance__description a,
  .main-worktime-balance .main-worktime-balance__table td,
  .main-worktime-balance .main-worktime-balance__table th,
  .main-worktime-balance__current button,
  .main-worktime-balance__current {
    transition: none;
  }
}
