.w-full
{
  width: 100% !important;
  max-width: 100% !important;

}

.custom-control-label::before,
.custom-control-label::after
{
  top: 0.25rem;
}
.cursor-pointer
{
  cursor: pointer;
}
.nowrap
{
  white-space: nowrap;
}
.calendar .page-container
{
  max-width: 100% !important;
}

.hided
{
  display: none;
}
.new-client-block
{
  width: 100%;
}

.table-calendar td:first-child
{
  width: 180px !important;
  min-width: 180px !important;
  max-width: 180px !important;
}
.head_date
{
  text-align: center;
}
.head_date span
{
  display: block;
}

.head_date-weekday
{
  font-size: 10px;
}
.head_date-date
{
  font-size: 14px;
}

.grid-cell-cube
{
  width: 42px !important;
  min-width: 42px !important;
  max-width: 42px !important;
  padding: 6px 2px !important;
}
.grid-cell-price
{
  border-left: 1px solid rgba(160, 175, 185, 0.15) !important;
  text-align: center;

  cursor: pointer;
  transition: all 0.25s ease-out;
}
.grid-cell-price:hover
{
  background: rgba(160, 175, 185, 0.15) !important;
}
.grid-cell-price.active
{
  background: #14bae440 !important;
}
.season-mark
{
  display: none;
  height: 6px;
  width: 6px;
  position: absolute;
  top: -16px;
  right: -4px;
}
.season-mark svg
{
  width: 100%;
  height: 100%;
}
.grid-cell-price-text
{
  position: relative;
}
.grid-cell-season .season-mark
{
  display: block;
}
.btn-text-left
{
  justify-content: flex-start;
}


.modal-promts-data .modal-content {
    height: 100vh;       /* на всю высоту экрана */
    display: flex;       /* флекс-колонка, чтобы body занял остаток */
    flex-direction: column;
}

.modal-promts-data .modal-header {
    flex-shrink: 0;      /* шапка не сжимается */
}

.modal-promts-data .modal-body {
    flex: 1 1 auto;      /* занимает всё свободное место */
    overflow-y: auto;    /* ← вот это включает скролл */
    min-height: 0;       /* важно для работы overflow во flex */
}

.react-app
{
  width: 400px;
  height: 200px;

  position: fixed;
  bottom: 0px;
  right: 0px;
  z-index: 9999;
}
.react-data-list
{
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-end;
  align-items: center;

  gap: 20px;

  box-sizing: border-box;
  padding: 0 40px;
}
.react-notice-card
{
  width: 360px;
  height: 160px;

  border-radius: 8px;

  background: #ffffff;

  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);

  box-sizing: border-box;
  padding: 20px;
}
.react-notice-card-header
{
  width: 100%;

  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;

  font-weight: 500;
  margin-bottom: 20px;
}
.react-card-time
{
  font-weight: 400;
}
.react-notice-card-body p
{
  margin-bottom: 8px;
}

.table.table-theme.v-middle tbody tr:nth-child(even)  td
{
  background-color: #448bff25;
}
.form-control
{
  border-color: rgba(135, 150, 165, 0.45) !important;
}
