/* Competitions List */

.comps-list-header h3 {
  margin: 20px 0;
}

@media (max-width: 500px) {
  .comps-list-header h3 {
    white-space: nowrap;
    font-size: 5vw;
  }
}

.comps-filters {
  margin-bottom: 10px;
  text-align: right;
  position: relative;
  display: inline-block;
}

.comps-filters .comps-filter-item {
  display: inline-block;
  vertical-align: top;
  text-align: left;
  margin: 0 5px;
}

.comps-filter-item input[type="text"],
.comps-filter-item select {
  height: 36px;
  line-height: 24px;
  padding: 4px 8px;
  box-sizing: border-box;
  border: 1px solid #cacaca;
  box-shadow: none;
}

.comps-filter-item .input-wrapper {
  position: relative;
}

.comps-filter-item .input-wrapper .fa-calendar {
  position: absolute;
  left: 10px;
  top: 0px;
  line-height: 36px;
}

.comps-filter-item input.datepicker {
  width: 140px !important;
  padding-left: 35px;
}

.comps-filters select {
  width: 140px !important;
  width: 140px !important;
}

.comps-filters-clear-button {
  margin: 30px 20px 0 10px;
  display: inline-block;
  font-size: 0.9em;
  position: absolute;
  right: 100%;
  white-space: nowrap;
}

@media (max-width: 979px) {
  .comps-filters-clear-button {
    position: relative;
    right: auto;
    width: 150px;
    margin: 30px 0 0 0;
    text-align: center;
  }
}

@media (min-width: 539px) and (max-width: 693px) {
  .comps-filters-clear-button {
    margin-top: 10px;
  }
}

.comps-filter-item .ui-multiselect {
  height: 36px;
  background: none;
  font-size: 0.9em;
  font-family: inherit;
}

#ui-datepicker-div {
  z-index: 100 !important;
}

.ui-multiselect-menu {
  font-family: inherit !important;
}

.ui-multiselect-menu .ui-helper-reset span {
  vertical-align: middle;
}

.ui-multiselect-checkboxes input[type=checkbox] {
  margin-top: 0px;
  vertical-align: middle;
  display: inline-block;
}

.comps-list-table td {
  vertical-align: middle;
}

.comps-list-table .ical-link {
  font-size: 0.8em;
}

.comp-image-td {
  width: 140px;
}

.comp-image-td .comp-image {
  max-width: 100%;
}

.comp-name {
  margin-bottom: 5px;
  font-size: 1.1em;
  font-weight: bold;
}

.comp-date {
  font-size: 0.9em;
}

.comp-fee {
  font-size: 0.9em;
}

.comp-fee .comp-fee-price {
  font-size: 1.2em;
  font-weight: bold;
}

.comp-type-badge {
  display: inline-block;
  padding: 0px 7px;
  background: #ddd;
  font-size: 0.6em;
  margin-left: 5px;
  vertical-align: middle;
}

.comp-type-badge.open {
  background: #51bb54;
  color: #fff;
}

.comp-type-badge.member {
  background: #69a9e8;
  color: #fff;
}

.comp-signup-time-info {
  font-size: 0.8em;
  margin-top: 5px;
  color: #757575;
  line-height: 1.4em;
}

td.comp-signup-td {
  text-align: center;
}

.comp-signup-td a {
  display: block;
  white-space: nowrap;
}

td.comp-signup-td a.entered .fa {
  margin-left: 0px;
  margin-right: 10px;
}

.comp-interested-info-filter,
a.comp-interested-info {
  margin-left: 5px;
  color: #dedede;
  font-size: 1.1rem;
}

a.comp-interested-info.interested {
  color: #ecb859;
}

.comp-interested-info-filter {
  display: inline-block;
  position: relative;
  margin: 0px;
  width: 25px;
  height: 25px;
  text-align: center;
}

.comp-interested-info-filter input[type="radio"] {
  opacity: 0;
  width: 100% !important;
  height: 100% !important;
  position: absolute;
  margin: 0px;
  left: 0;
  top: 0;
  z-index: 2;
}

.comp-interested-info-filter .fa {
  z-index: 1;
}

.comp-interested-info-filter input[type="radio"]:checked {
  z-index: 0;
}

.comp-interested-info-filter input[type="radio"]:checked + i.fa {
  display: none;
}

.comp-interested-info-filter input[type="radio"][value="0"] + i.fa {
  color: #ecb859;
}

@media (max-width: 800px) {
  table.comps-list-table td {
    display: inline-block;
    box-sizing: border-box;
    border: none;
  }

  table.comps-list-table td.comp-image-td {
    width: 25%;
    vertical-align: top;
  }

  table.comps-list-table td.comp-name-td {
    width: 75%;
    vertical-align: top;
    margin-left: -5px;
  }

  table.comps-list-table td.comp-fees-td {
    margin-left: -5px;
    display: none;
  }

  table.comps-list-table td.comp-signup-td {
    width: 100%;
    text-align: center;
  }

  table.comps-list-table  .comp-signup-td a {
    width: auto;
    display: block;
  }

  table.comps-list-table tr {
    display: block;
    border-bottom: 1px solid #ddd;
    padding: 10px 0;
    position: relative;
  }

  table.comps-list-table .comp-ical-td {
    position: absolute;
    right: 10px;
    top: 10px;
  }

  .comps-filters {
    text-align: center;
    margin-top: 20px;
  }
}

@media (max-width: 580px) {
  table.comps-list-table td.comp-fees-td {
    display: none;
  }
}

@media (min-width: 580px) and (max-width: 800px) {
  table.comps-list-table td.comp-name-td {
    width: 50%;
  }

  table.comps-list-table td.comp-fees-td {
    display: inline-block;
    width: 25%;
    text-align: right;
  }
}

@media (min-width: 425px) and (max-width: 660px) {
  #entrantsMultiselect_ms {
    width: 335px !important;
  }
}

/* Competition Details */
#globalwrap { 
  background: #fff;
  padding:10px;
}

.comp-details .comp-general-info {
  font-size: 0.9em;
  margin-top: 20px;
}

#globalwrap .comp-details .comp-general-info + hr {
  margin-top: 10px !important;
}

.comp-details .text-green {
  color: #38a757;
}

.comp-details .comp-general-info .info-item {
  display: inline-block;
  vertical-align: middle;
  margin-right: 30px;
}

.comp-details .comp-general-info .info-item i {
  margin-right: 3px;
}

.comp-details .comp-description {
  margin-top: 20px;
  margin-bottom: 20px;
  transition: height 0.2s;
}

.comp-details .comp-description .read-more {
  display: none;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 10;
  background: white;
  text-align: center;
  xbox-shadow: 0px -5px 20px 10px #ffffff;
}

.comp-details .comp-description.read-toggle-enabled .read-more {
  display: block;
}

.comp-details .comp-description {
  overflow: hidden;
  position: relative;
}

.comp-details .comp-description.expanded {
  height: auto !important;
  padding-bottom: 30px;
}

.comp-details .comp-signup-box {
  margin-top: 10px;
}

.comp-details .comp-signup-box a.btn {
  box-sizing: border-box;
  text-decoration: none;
  width: 100%;
}

.comp-details .comp-signup-info-box {
  margin: 10px 0;
}

.comp-details .comp-signup-text {
  margin: 10px 0;
  line-height: 1.4em;
}

.comp-details .comp-date .fa-calendar {
  margin-right: 5px;
}

.comp-details .comp-button-wrapper {
  margin: 10px 0;
}

.comp-details .comp-info-item {
  margin: 5px 0;
}

.comp-details .comp-fees-list {
  list-style: none;
  margin-left: 0px;
  margin-bottom: 10px;
}

.comp-details .comp-fees-list li {
  margin: 5px 0;
}

.comp-details .comp-info-item label {
  font-size: 1em;
  font-weight: bold;
  margin-bottom: 0px;
}

.comp-details  .comp-info-item .comp-info-item-text {
  font-size: 0.9em;
  line-height: 160%;
}

.comp-info-item .fa {
  margin-right: 5px;
}

.comp-details .comp-signup-button {
  display: block;
  margin: 10px 0;
}

.comp-details .comp-button-wrapper .btn .fa {
  margin-left: 0px;
  margin-right: 10px;
}

.comp-details .comp-options .btn {
  display: block;
  margin: 10px 0;
  line-height: 28px;
  padding: 4px 14px;
  box-sizing: border-box;
  text-decoration: none;
}

.comp-details .comp-options .btn i {
  margin: 0;
  float: left;
  line-height: 28px;
  display: inline-block;
  vertical-align: middle;
}

/* Comp Signup */

#onlineSignupContainer .user-messages ul {
  margin: 5px 0;
}

.comps-filter-item .input-wrapper .fa-calendar,
.php-competition2 .read-more a,
.php-competition2 #onlineSignupContainer p,
.php-competition2 #onlineSignupContainer span.text,
.php-competition2 #onlineSignupContainer h4,
.php-competition2 #onlineSignupContainer a:not(.btn),
.php-competition2 #onlineSignupContainer table tbody tr,
.php-competition2 #onlineSignupContainer h3,
.php-competition2 .entries-count-box, 
.php-competition2 .visitoropen-wrapper div,
.php-competition2 #onlineSignupContainer .bottom-nav a:not(.btn),
.php-competition2 #onlineSignupContainer .comp-rules,
.php-competition2 #onlineSignupContainer .comp-reserve-list {
  	color:#333;
}

.comp-signup-wrapper {
  margin: 20px 0;
  padding: 20px;
  background: #f2f2f2;
  border: 1px solid #dddddd;
  position: relative;
}

.comp-signup-wrapper input[type=text] {
  border: 1px solid #ddd;
  padding: 6px 8px;
  vertical-align: middle;
  display: inline-block;
  font-size: 1em !important;
  box-sizing: border-box;
  height: auto !important;
  margin: 0px;
}

.comp-signup-wrapper .comp-rules {
  max-height: 250px;
  margin-bottom: 20px;
  overflow: auto;
}

.steps-nav {
  margin: 20px 0 20px 0;
}

.steps-nav .step-item {
  display: inline-block;
  padding: 8px 5px;
  font-size: 0.9em;
  margin-right: -5px;
  position: relative;
}

.steps-nav .step-item:after {
  content: '';
  height: 1px;
  width: 20px;
  background: #afafaf;
  top: 50%;
  display: inline-block;
  vertical-align: middle;
  margin-left: 15px;
  margin-right: 10px;
}

.steps-nav .step-item:last-child:after {
  display: none;
}

.steps-nav .step-item .circle {
  width: 22px;
  height: 22px;
  line-height: 23px;
  border-radius: 100%;
  text-align: center;
  display: inline-block;
  vertical-align: middle;
  font-size: 0.7em;
  margin-right: 10px;
  background: #ddd;
}

.steps-nav .step-item .text {
  display: inline-block;
  vertical-align: middle;
}

.steps-nav .step-item.active .circle {
  background: #38a757;
  color: #fff;
}

.steps-nav .step-item.active {
  color: inherit;
  cursor: default;
}

.steps-nav .step-item:not(.active) {
  color: #969696;
  opacity: 0.6;
}

.bottom-nav a {
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
}

.bottom-nav {
  margin-top: 10px 0;
}

.fieldset-with-legend  {
  position: relative;
  padding-top: 25px;
  margin-top: 30px;
}

.fieldset-with-legend .legend {
  background: #f2f2f2;
  position: absolute;
  left: 10px;
  top: -10px;
  margin: 0px;
  padding: 0 10px;
}

.team-players-list {
  list-style: none;
  margin: 10px 0 30px 0;
}

.team-players-list li {
  display: inline-block;
  min-width: 150px;
  background: #fff;
  padding: 14px 16px;
  border-radius: 3px;
  font-size: 0.9em;
  border: 1px solid #e3e3e3;
  margin: 3px 0;
}

.team-players-list li.empty {
  color: #9c9c9c;
  background: #e3e3e3;
}

.team-players-list li .player-num {
  margin-right: 5px;
  font-size: 0.85em;
}

.add-team-member input[type="text"] {
  width: 250px;
  max-width: 100%;
  margin: 5px 0;
}

.add-team-member {
  margin-bottom: 10px;
}

.add-team-member h3 {
  display: none;
}

.add-team-member .candidates {
  margin-bottom: 10px;
}
.add-team-member .candidate {
  margin-right: 5px;
}

.add-team-member .candidate a {
  text-decoration: underline;
} 

.candidate .fa {
  margin-right: 5px;
}

.existing-teams tr.time-pref-header td {
  font-weight: bold;
  padding-top: 15px;
}

.existing-teams i.join-team-btn {
  display: inline-block;
  padding: 6px 0;
  margin-left: 30px;
}

.existing-teams a.join-team-btn {
  margin: 3px 0;
  margin-left: 30px;
  height: 30px;
  line-height: 30px;
  padding: 0 15px;
  white-space: nowrap;
}

.add-team-partners h3 {
  display: none;
}

.time-pref-buttons .btn {
  margin: 8px 0;
}

.zones-table td,
.zones-table th {
  vertical-align: middle;
}

.comp-reserve-list {
  margin-bottom: 20px;
}

.add-to-reserve-list .back-link {
  display: none;
}

.add-to-reserve-list label {
  margin: 15px 0;
}

.add-to-reserve-list .checkbutton {
  margin-right: 5px;
  margin-top: 0px;
}

.visitoropen-wrapper .comp-comments {
  display: none;
}

.visitoropen-wrapper fieldset {
  margin-bottom: 10px;
}

.visitoropen-wrapper fieldset p {
  padding-bottom: 0px;
}

.comp-summary-table th {
  width: 150px;
}

.signup-step-timepref {
  width: auto;
  overflow: auto;
}

.my-fees hr:last-child,
.other-fees hr:last-child {
  display: none;
}

.other-fees {
  margin-top: 30px;
}

.button-createteam {
  margin-bottom: 10px;
}

@media (max-width: 600px) {
  .comp-signup-wrapper {
    padding: 15px;
  }

  .steps-nav {
    display: flex;
  }

  .steps-nav .step-item {
    padding-right: 15px;
    margin-right: 0px;
}

  .steps-nav .step-item .circle {
    margin-right: 0px;
    width: 18px;
    height: 18px;
    line-height: 19px;
  }

  .steps-nav .step-item .text {
    display: block;
    margin-top: 5px;
  }

  .steps-nav .step-item:after {
    display: none;
  }

  .startsheettable .slot .btn {
    white-space: nowrap;
    padding: 0px 10px;
    height: 32px;
    line-height: 34px;
  }

  .team-players-list li {
    width: 100%;
    box-sizing: border-box;
    padding: 8px 10px;
  }

  .startsheettable .slot {
    font-size: 13px;
    line-height: 140%;
  }

  .bottom-nav .btn {
    margin-bottom: 5px;
    margin-top: 5px;
  }

  .add-team-partners input[type='text'] {
    margin-bottom: 10px;
    width: 100%;
  }

  table.existing-teams td {
    padding: 5px 0;
  }

  .my-fees .my-balance {
    float: none;
  }

  .player-fees-item {
    margin-bottom: 20px !important;
  }

  .player-fees-item small {
    display: block;
    line-height: 140%;
    margin-top: 5px;
  }

  .player-fees-item .btn {
    margin-top: 5px;
  }

  .player-fees-items {
    display: block !important;
  }
}