.form-control:focus {
  border-radius: 0px !important;
  border-color: rgba(0, 0, 0, 0.6) !important;
  border: 1px solid white !important;
  border-bottom: 2px solid black !important;
  box-shadow: 0 0 0 0rem rgba(23, 28, 35, 0.25) !important;
}
.form-select:focus {
  border-radius: 0px !important;
  border-color: rgba(0, 0, 0, 0.6) !important;
  border: 1px solid white !important;
  border-bottom: 2px solid black !important;
  box-shadow: 0 0 0 0rem rgba(23, 28, 35, 0.25) !important;
}

.form-control {
  border-radius: 0px !important;
  border: 1px solid white !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.6) !important;
}

.form-floating > .form-control:focus ~ label,
.form-floating > .form-control:not(:placeholder-shown) ~ label,
.form-floating > .form-control-plaintext ~ label {
  transform: scale(0.85) translateY(-2rem) translateX(0.15rem) !important;
}
.form-control:focus {
  border-color: black !important;
  border: 2px solid black;
  box-shadow: 0 0 0 0rem rgba(23, 28, 35, 0.25) !important;
}
.form-floating > .form-control-plaintext:focus,
.form-floating > .form-control-plaintext:not(:placeholder-shown),
.form-floating > .form-control:focus,
.form-floating > .form-control:not(:placeholder-shown) {
  padding-top: 0.625rem !important;
}

.row > .form-floating > label {
  padding: 1rem 1.75rem !important;
}
.list-group a {
  text-decoration: none;
}
.accordion-button:not(.collapsed) {
  background-color: white !important;
  border-bottom: 1px solid #212529 !important;
}
.accordion-button.collapsed {
  background-color: white !important;
  border-bottom: 1px solid #212529 !important;
}
.accordion-button:focus {
  border-color: #212529 !important;
  box-shadow: none !important;
  border-bottom: 1px solid #212529 !important;
}
.modal {
  --bs-modal-width: 600px !important;
}
.input-group-text {
  border: 1px solid white !important;
}
.public {
  border-image-slice: 0 0 1 !important;
  border-image-source: linear-gradient(
    to right,
    #4169e1 10% 10%,
    black 10%
  ) !important;
}
.close {
  border-image-slice: 0 0 1 !important;
  border-image-source: linear-gradient(
    to right,
    #cc0000 10% 10%,
    black 10%
  ) !important;
}
.personal {
  border-image-slice: 0 0 1 !important;
  border-image-source: linear-gradient(
    to right,
    #ffb300 10% 10%,
    black 10%
  ) !important;
}
.hint {
  align-items: center;
  display: flex;
  font-size: 0.6em !important;
}
.hint hr {
  width: 20px;
  display: inline-block;
  margin: 0.5rem 0 !important;
}
.current::before,
.current::after {
  content: "";
  position: absolute;
  left: -40px;
  top: 20px;
  border: 20px solid transparent;
  border-right: 20px solid #e7eaed;
}
.current::after {
  border-right: 20px solid white;
  top: 20px;
  width: 41px;
}
.currents {
  position: relative;
}
.currents::before,
.currents::after {
  content: "";
  position: absolute;
  left: -40px;
  bottom: 20px;
  border: 20px solid transparent;
  border-right: 20px solid #e7eaed;
}
.currents::after {
  border-right: 20px solid white;
  bottom: 20px;
  width: 41px;
}
.currents {
  position: relative;
}
.height_clients.current::after,
.height_clients.current::before {
  top: 75px !important;
}
.height_clubcard.current::after,
.height_clubcard.current::before {
  top: 130px !important;
}
.height_booking.current::after,
.height_booking.current::before {
  top: 185px !important;
}
.height_logs.current::after,
.height_logs.current::before {
  top: 315px !important;
}
.height_agreements.current::after,
.height_agreements.current::before {
  top: 395px !important;
}
.height_agreementstemplate.current::after,
.height_agreementstemplate.current::before {
  top: 240px !important;
}
.height_typesclubcard.current::after,
.height_typesclubcard.current::before {
  top: 450px !important;
}
.height_resources.current::after,
.height_resources.current::before {
  top: 505px !important;
}
.height_requests.current::after,
.height_requests.current::before {
  top: 555px !important;
}
.height_settings.currents::after,
.height_settings.currents::before {
  bottom: 60px !important;
}
.blocks::before,
.blocks::after {
  content: "";
  position: absolute;
  left: -40px;
  /*bottom: 390px;*/
  top:175px;
  border: 20px solid transparent;
  border-right: 20px solid rgba(0, 0, 0, 0.175);
}
.blocks::after {
  border-right: 20px solid white;
  /*bottom: 390px;*/
  top:175px;
  width: 41px;
}
.block_height_settings.blocks::after,
.block_height_settings.blocks::before {
  /*bottom: 370px !important;*/
  top: 93px !important;
}
.block_height_clubcard.blocks::after,
.block_height_clubcard.blocks::before {
  /*bottom: 145px !important;*/
  top: 247px !important;
}
.block_height_booking.blocks::after,
.block_height_booking.blocks::before {
  /*bottom: 350px !important;*/
  top: 315px !important;
}
.list-group-item {
  padding: 0.7rem 1rem !important;
}
td {
  vertical-align: middle;
}

li div {
  margin-bottom: 0.5rem;
}
table td a,
ul a {
  text-decoration: none;
  color: black;
}
th {
  cursor: pointer;
}
th i {
  width: 20px;
  display: inline-block;
}
tr:nth-child(1) > th {
  padding-bottom: 1.5rem;
}
#myInput {
  padding: 0rem 0rem;
  line-height: 1.1;
  margin-bottom: 2px;
}

.bi-check2-circle::before {
  color: green;
}
.agree {
  border: 1px solid green !important;
}
.bi-x-circle::before {
  color: red;
}
.bi-x-octagon::before {
  color: red;
}
.disagree {
  border: 1px solid red !important;
}
.toast {
  width: max-content !important;
}

.fully-booked {
  background-color: #ff4d4d !important;
  color: white !important;
}

.partially-booked {
  background-color: rgba(195,226,250, 0.8) !important;
  color: black !important;
}
.time-checkbox:checked + .btn {
  background-color: rgba(195,226,250, 0.8) !important;
}
.p-select{
  padding-top: 2rem !important;
}
.table tbody tr:hover td, .table tbody tr:hover th {
  background-color: #f2f2f2 ;
}
.lesscurrenttime{
  color:#bbbbbb  !important;
}
.input-file-list-remove{
  position: absolute;
  margin-left: 26%;
  margin-top: 10px;
}
.flex-container {
  display: flex;
}
.flex-item {
  flex: 1; /* Равное распределение пространства */
  padding: 5px;

}
/* Контейнер блоков Masonry */
/*.masonry {
	columns: 2; 
	column-gap: 1em; 

	/* тоже самое с нужными префиксами на 18 марта 2016 */
/*	-webkit-column-count: 2; -moz-column-count: 2; column-count: 2;
	-webkit-column-gap: 1em; -moz-column-gap: 1em; column-gap: 1em;*/
/*}*/
/* Блоки Masonry */
/*.masonry .card {
	display: inline-block; 
	width: 100%;          
	margin-bottom: 1em;
  padding: 0 1rem;
}*/
