.booking-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:16px!important;
  width:100%;
}

.booking-layout>.booking-panel{
  width:100%;
  min-width:0;
}

.booking-requests,
.booking-availability{
  grid-column:1/-1;
}

.booking-availability{
  overflow:visible!important;
}

.booking-requests .booking-panel-head{
  margin-bottom:10px;
}

.booking-request-columns,
.booking-requests .booking-request-row{
  display:grid!important;
  grid-template-columns:94px 92px minmax(135px,1.25fr) minmax(125px,1.15fr) minmax(125px,1fr) minmax(95px,.85fr) 18px!important;
  column-gap:14px!important;
  align-items:center!important;
  width:100%;
  min-width:0;
}

.booking-request-columns{
  padding:8px 12px 7px;
  border-top:1px solid var(--border,#dce5e8);
  border-bottom:1px solid var(--border,#dce5e8);
  color:var(--muted,#73858e);
  font-size:8px;
  line-height:1;
  font-weight:800;
  letter-spacing:.055em;
  text-transform:uppercase;
}

.booking-request-columns span:last-child{text-align:right}

.booking-requests .booking-request-row{
  min-height:52px;
  padding:9px 12px!important;
  border:0!important;
  border-bottom:1px solid var(--border,#e2e9eb)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  text-align:left!important;
}

.booking-requests .booking-request-row:last-of-type{border-bottom:0!important}
.booking-requests .booking-request-row:hover{background:#f8fbfc!important}

.booking-requests .booking-request-row>.booking-status{
  grid-column:1;
  justify-self:start;
  max-width:100%;
  white-space:nowrap!important;
  font-size:8.5px;
  line-height:1.1;
  padding:5px 8px;
}

.booking-requests .booking-request-row>time{
  grid-column:2;
  min-width:0;
  font-size:10px;
  line-height:1.25;
  font-weight:750;
  color:var(--text,#17354a);
}

.booking-requests .booking-request-row>time small{
  display:block;
  margin-top:2px;
  font-size:8px;
  line-height:1.2;
  font-weight:500;
  color:var(--muted,#788a93);
  white-space:normal;
}

.booking-requests .booking-request-row>span:not(.booking-status){display:contents!important}
.booking-requests .booking-request-row>span:nth-of-type(2)>strong{grid-column:3}
.booking-requests .booking-request-row>span:nth-of-type(2)>small{grid-column:4}
.booking-requests .booking-request-row>span:nth-of-type(3)>strong{grid-column:5}
.booking-requests .booking-request-row>span:nth-of-type(3)>small{grid-column:6}

.booking-requests .booking-request-row>span:not(.booking-status)>strong,
.booking-requests .booking-request-row>span:not(.booking-status)>small{
  display:block;
  min-width:0;
  max-width:100%;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:normal!important;
  overflow-wrap:anywhere;
}

.booking-requests .booking-request-row>span:not(.booking-status)>strong{
  font-size:10px;
  line-height:1.3;
  font-weight:750;
  color:var(--text,#17354a);
}

.booking-requests .booking-request-row>span:not(.booking-status)>small{
  font-size:9px;
  line-height:1.3;
  color:var(--muted,#73858e);
}

.booking-requests .booking-request-row>b{
  grid-column:7;
  justify-self:end;
  font-size:18px;
  line-height:1;
  font-weight:500;
  color:#58717c;
}

.booking-availability .availability-grid{
  width:100%!important;
  min-width:0!important;
  grid-template-columns:minmax(105px,1.15fr) repeat(7,minmax(72px,1fr))!important;
}

.booking-availability .availability-grid>*{min-width:0}

@media(max-width:1050px){
  .booking-request-columns,
  .booking-requests .booking-request-row{
    grid-template-columns:84px 82px minmax(115px,1.2fr) minmax(105px,1.1fr) minmax(108px,1fr) minmax(85px,.8fr) 14px!important;
    column-gap:9px!important;
  }
  .booking-request-columns{font-size:7.5px}
  .booking-availability .availability-grid{
    grid-template-columns:92px repeat(7,minmax(62px,1fr))!important;
  }
}

@media(max-width:760px){
  .booking-request-columns{display:none!important}
  .booking-requests .booking-request-row{
    grid-template-columns:82px minmax(0,1fr) 14px!important;
    grid-template-rows:auto auto auto;
    gap:4px 10px!important;
    padding:12px 10px!important;
  }
  .booking-requests .booking-request-row>.booking-status{grid-column:1;grid-row:1/4}
  .booking-requests .booking-request-row>time{grid-column:2;grid-row:1}
  .booking-requests .booking-request-row>span:nth-of-type(2)>strong{grid-column:2;grid-row:2}
  .booking-requests .booking-request-row>span:nth-of-type(2)>small{grid-column:2;grid-row:3}
  .booking-requests .booking-request-row>span:nth-of-type(3)>strong,
  .booking-requests .booking-request-row>span:nth-of-type(3)>small{display:none!important}
  .booking-requests .booking-request-row>b{grid-column:3;grid-row:1/4;align-self:center}
  .booking-availability{overflow-x:auto!important}
  .booking-availability .availability-grid{min-width:650px!important}
}
