/* Babysitter Zehra: Step 3 visual layout only. No DOM changes or booking logic. */
body.page-id-198 .bz-wc.bz-has-wizard .bz-wc-calendar-card {
  display:grid !important;
  grid-template-columns:minmax(225px,1fr) minmax(230px,1fr) auto !important;
  column-gap:14px !important;
  row-gap:14px !important;
  align-items:center !important;
}
/* Display the original heading, range and navigation on one row.
   display:contents lets the existing calendar's controls keep their listeners. */
body.page-id-198 .bz-wc.bz-has-wizard .bz-wc-calendar-card > .bz-wc-week-nav {
  display:contents !important;
}
body.page-id-198 .bz-wc.bz-has-wizard .bz-wc-calendar-card > h2 {
  grid-column:1 !important;
  margin:0 !important;
  line-height:1.3 !important;
  font-size:1.5rem !important;
}
body.page-id-198 .bz-wc.bz-has-wizard .bz-wc-calendar-card > .bz-wc-week-nav > div:first-child {
  grid-column:2 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
  flex-wrap:wrap !important;
  min-width:0 !important;
}
body.page-id-198 .bz-wc.bz-has-wizard .bz-wc-calendar-card .bz-wc-week-range {white-space:nowrap;}
body.page-id-198 .bz-wc.bz-has-wizard .bz-wc-calendar-card .bz-wc-days-limit {margin-left:0 !important;white-space:nowrap;}
body.page-id-198 .bz-wc.bz-has-wizard .bz-wc-calendar-card > .bz-wc-week-nav > .bz-wc-week-buttons {
  grid-column:3 !important;
  display:flex !important;
  flex-wrap:nowrap !important;
  justify-content:flex-end !important;
}
/* All the remaining calendar controls stay in their natural order and full width. */
body.page-id-198 .bz-wc.bz-has-wizard .bz-wc-calendar-card > :not(h2):not(.bz-wc-week-nav) {
  grid-column:1 / -1;
  min-width:0;
}
/* Remove text that repeats the 2-hour introductory booking rule. */
body.page-id-198 .bz-wc.bz-has-wizard .bz-wc-calendar-card > h2 + p,
body.page-id-198 .bz-wc.bz-has-wizard .bz-wc-calendar-card > .bz-wc-minimum {
  display:none !important;
}
/* The end time is still selected automatically and kept in the original DOM. */
body.page-id-198 .bz-wc.bz-has-wizard .bz-wc-calendar-card .bz-wc-time-pickers {
  display:grid !important;
  grid-template-columns:minmax(0,1fr) !important;
  max-width:380px !important;
  width:100% !important;
  margin-top:0 !important;
}
body.page-id-198 .bz-wc.bz-has-wizard .bz-wc-calendar-card .bz-wc-time-pickers .bz-wc-pick:has(#bz-wc-end) {
  display:none !important;
}
/* Screen readers can still use the original start-time control. The hidden
   end-time selector is still available to the internal booking logic. */
@media (max-width:1100px) {
  body.page-id-198 .bz-wc.bz-has-wizard .bz-wc-calendar-card {
    grid-template-columns:minmax(0,1fr) auto !important;
  }
  body.page-id-198 .bz-wc.bz-has-wizard .bz-wc-calendar-card > h2 {grid-column:1 / -1 !important}
  body.page-id-198 .bz-wc.bz-has-wizard .bz-wc-calendar-card > .bz-wc-week-nav > div:first-child {grid-column:1 !important;justify-content:flex-start !important}
  body.page-id-198 .bz-wc.bz-has-wizard .bz-wc-calendar-card > .bz-wc-week-nav > .bz-wc-week-buttons {grid-column:2 !important}
}
@media (max-width:560px) {
  body.page-id-198 .bz-wc.bz-has-wizard .bz-wc-calendar-card {grid-template-columns:minmax(0,1fr) !important;row-gap:11px !important}
  body.page-id-198 .bz-wc.bz-has-wizard .bz-wc-calendar-card > .bz-wc-week-nav > .bz-wc-week-buttons {grid-column:1 !important;justify-content:flex-start !important}
  body.page-id-198 .bz-wc.bz-has-wizard .bz-wc-calendar-card .bz-wc-time-pickers {max-width:100% !important}
}


/* Keep the area below Start time stable while availability is checked.
   The original timetable and its status text remain in the DOM for logic,
   but the dropdown communicates ordinary loading and unavailable states. */
body.page-id-198 .bz-wc.bz-has-wizard .bz-wc-calendar-card .bz-wc-schedule,
body.page-id-198 .bz-wc.bz-has-wizard .bz-wc-calendar-card .bz-wc-selection-msg:empty,
body.page-id-198 .bz-wc.bz-has-wizard .bz-wc-calendar-card:has(#bz-wc-start:not(:disabled)) .bz-wc-selection-msg {
  display:none !important;
}
/* Explain duration and introductory status together, rather than repeating it. */
body.page-id-198 .bz-wc.bz-has-wizard .bz-wizard-session-preview .bz-wizard-preview-duration {
  font-size:0 !important;
}
body.page-id-198 .bz-wc.bz-has-wizard .bz-wizard-session-preview .bz-wizard-preview-duration::after {
  content:"2-hour introductory session";
  display:block;
  font-size:.95rem;
  line-height:1.45;
}
/* The legacy request/refinements scripts can reset this note asynchronously.
   Show the approved wording consistently without modifying their behaviour. */
body.page-id-198 .bz-wc.bz-has-wizard .bz-wc-calendar-card .bzfr-intro-note {
  font-size:0 !important;
}
body.page-id-198 .bz-wc.bz-has-wizard .bz-wc-calendar-card .bzfr-intro-note::before {
  content:"This request is for your 2-hour introductory session only. After your family account is approved, you can request longer sessions and multiple dates.";
  display:block;
  font-size:.93rem;
  line-height:1.5;
}
