.timetrack {
  .time-block {
    border-top: $tb-border-top;
    padding: $tb-padding;

    .alert {
      &.strut-action {
        margin: $tb-alert-strut-margin;
      }
    }

    form {
      .form-group {
        position: relative;
        display: $tb-form-form-group-display;
        align-items: $tb-form-form-group-align-items;
        flex-wrap: $tb-form-form-group-flex-wrap;
        flex-direction: $tb-form-form-group-flex-direction;
        padding: $tb-form-form-group-padding;
        margin: $tb-form-form-group-margin;
        border-bottom: $tb-form-form-group-border-bottom;

        &:last-of-type {
          border-bottom: $tb-form-form-group-last-type-border-bottom;
          padding: $tb-form-form-group-last-type-padding;
        }

        &:hover,
        &:focus-within {
          //note: focus-within -- via https://caniuse.com/#feat=css-focus-within
          label {
            &:first-child {
              color: $tb-form-form-group-hover-focus-label-first-child-color;
            }
          }

          .date-range-picker {
            label {
              color: $form-label-text-color;
            }

            div {

              &:hover,
              &.active,
              &:focus,
              &:focus-within {
                label {
                  color: $tb-form-form-group-hover-focus-label-first-child-color;
                }
              }
            }
          }
        }
      }

      label {
        &:first-child {
          min-width: $tb-form-form-group-label-first-child-min-width;
        }
      }

      select {
        overflow: hidden;
        width: $tb-form-form-group-select-width;
        text-overflow: $tb-form-form-group-select-text-overflow;
      }
    }


    button {
      &.time-now {
        position: absolute;
        right: 17px;
        top: 17px;

        &:hover,
        &:focus {
          background: gainsboro;
        }
      }
    }

    table {
      margin: $tb-form-form-group-table-margin;
    }

    h1 {
      display: $tb-form-form-group-h1-display;
      border-bottom: $tb-form-form-group-h1-border-bottom;
      background-color: $tb-form-form-group-h1-background-color;
      color: $tb-form-form-group-h1-color;
      padding: $tb-form-form-group-h1-padding;
      margin: $tb-form-form-group-h1-margin;

      small {
        font-weight: $tb-form-form-group-h1-small-font-weight;
        margin-left: $tb-form-form-group-h1-small-margin-left;
      }
    }

    .button-group {
      padding: $tb-button-group-padding;

      input {
        &[type=submit] {
          background: $tb-button-group-input-submit-background;
          color: $tb-button-group-input-submit-color;
        }
      }
    }
  }
}