/* Component-specific styles only. Theme and Bootstrap overrides live in orv-ci.css and bootstrap_and_overrides.css. */

/* Component: table-like layout */
.table-like {
  display: table;

  .table-row {
    display: table-row;
  }

  .table-row .table-cell {
    display: table-cell;
  }

  .table-row-group {
    display: table-row-group;
  }
}

.upload_button {
  text-align: right;
}

.registration {
  .race-row {
    margin-bottom: 12px;
    padding-top: 5px;
  }

  .race-detail-value {
    font-size: 1.1em;
  }

  .boat-fields .boat-fields-card {
    padding: 1rem;
    border: 1px solid var(--orv-border);
    border-radius: var(--orv-radius);
    background-color: #fafafa;
  }

  .boat-fields {
    label.form-label {
      margin-bottom: 1px;
      font-size: 0.875rem;
      letter-spacing: 0.01em;
    }

    .form-control {
      max-width: none;
    }

    .member-fields {
      display: grid;
      grid-template-columns: 1fr;
      gap: 0.4rem;
    }

    .member-fields > [data-member-slot] {
      margin-bottom: 0;
    }

    .row.mt-2.member-fields {
      margin-top: 0.75rem;
    }

    .row > .col-12.mb-2 {
      margin-bottom: 0.75rem;
    }

    .row:last-of-type {
      margin-bottom: 0;
    }

    > .mt-2 {
      margin-top: 1rem;
    }
  }
}

/* Crew / registration */
.crew-label {
  float: left;
  padding-top: 5px;
  padding-right: 5px;
  text-align: right;
  width: 50px;
}

.crew-header {
  font-weight: normal;
  margin-bottom: 10px;
}

.crew-member-label {
  text-align: right;
}

.crew-member-name-field {
  padding-left: 0px;
  padding-right: 0px;
}

.crew-checkbox-label {
  float: left;
  padding-top: 1px;
  padding-right: 5px;
  text-align: right;
  width: 150px;
}

.crew-name-example {
  padding-left: 0px;
  margin-top: -9px;
  font-size: 0.7em;
  color: #888;
}

.crew-delete-button-col {
  padding-left: 0px;
  margin-top: 10px;
}

.crew-fields .form-group {
  margin-top: 5px;
}

.crew-table .label-cell {
  text-align: right;
  width: 55px;
  padding-right: 4px;
}

/* Race */
.race-fact {
  font-size: 1.1em;
}

.race-header {
  font-weight: bold;
}

.prev {
  margin-right: 10px;
}

/* Button group layout only (no color/shape) */
.btn-group-add {
  width: 100%;
}

.btn_add_crew,
.btn_add_combi {
  width: 50%;
}

.combination-clubs-field {
  padding-left: 0px;
}

.masters-club-field {
  margin-top: 5px;
}
