/* Calendar cards keep the time on its own line. Short physical slots reveal
   only complete lines; their focus/hover detail carries the full appointment. */
body.pro-mode .dashboard-shell .business-schedule-page .business-week-event .business-booking-event-summary > strong,
body.pro-mode .dashboard-shell .business-schedule-page .business-week-block > strong {
  font-family: var(--pro-ui-font, inherit);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
}
body.pro-mode .dashboard-shell .business-schedule-page .business-booking-event-summary > .business-calendar-event-time,
body.pro-mode .dashboard-shell .business-schedule-page .business-week-block > .business-calendar-event-time {
  display: block;
  grid-column: 1 / -1;
  min-width: 0;
  margin: 0;
  font-family: var(--pro-ui-font, inherit);
  font-size: 11px;
  font-weight: 450;
  font-variant-numeric: tabular-nums;
  line-height: 1.2;
  white-space: normal;
  overflow-wrap: normal;
  overflow: visible;
  text-overflow: clip;
  color: inherit;
}
body.pro-mode .dashboard-shell .business-schedule-page .business-week-event .business-booking-event-service {
  font-family: var(--pro-ui-font, inherit);
  font-size: 11px;
  font-weight: 450;
  line-height: 1.2;
}
body.pro-mode .dashboard-shell .business-schedule-page .business-week-event .business-booking-event-summary {
  gap: 2px;
}
body.pro-mode .dashboard-shell .business-schedule-page .business-week-event.is-calendar-event-compact .business-booking-event-summary > .business-booking-event-service {
  display: none;
}
body.pro-mode .dashboard-shell .business-schedule-page .business-week-event:is(.is-calendar-event-micro, .is-calendar-event-short) .business-booking-event-summary > .business-calendar-event-time,
body.pro-mode .dashboard-shell .business-schedule-page .business-week-block.is-calendar-event-short > .business-calendar-event-time {
  display: none;
}
body.pro-mode .dashboard-shell .business-schedule-page .business-week-block.is-calendar-event-short > strong {
  font-size: 12px;
  line-height: 1.2;
}
@container booking-event (max-width: 100px) {
  body.pro-mode .dashboard-shell .business-schedule-page .business-week-event .business-booking-stylist-dot { display: none; }
  body.pro-mode .dashboard-shell .business-schedule-page .business-week-event .business-booking-event-summary { display: grid; grid-column: 1 / -1; }
  body.pro-mode .dashboard-shell .business-schedule-page .business-week-event .business-booking-event-summary > strong { display: block; }
  body.pro-mode .dashboard-shell .business-schedule-page .business-week-event .business-booking-event-service { display: none; }
  body.pro-mode .dashboard-shell .business-schedule-page .business-booking-event-summary > .business-booking-event-status { display: none; }
  body.pro-mode .dashboard-shell .business-schedule-page .business-week-event.is-calendar-event-compact .business-booking-event-summary > .business-calendar-event-time { display: none; }
}
/* Popover top-layer placement escapes timeline overflow. Body portals provide
   the same viewport positioning when native manual popovers are unavailable. */
body.pro-mode .business-calendar-event-tooltip:not([data-schedule-tooltip-open]) { display: none; }
body.pro-mode .business-calendar-event-tooltip[data-schedule-tooltip-open] {
  position: fixed !important;
  inset: auto !important;
  left: var(--calendar-tooltip-left, 12px) !important;
  top: var(--calendar-tooltip-top, 12px) !important;
  bottom: auto !important;
  right: auto !important;
  z-index: 14000;
  display: grid;
  box-sizing: border-box;
  width: min(300px, calc(100vw - 24px));
  max-width: calc(100vw - 24px);
  max-height: calc(100vh - 24px);
  margin: 0 !important;
  padding: 0;
  overflow: auto;
  border: 1px solid var(--pro-ui-line, #dce7e3);
  border-radius: 10px;
  color: var(--pro-ui-ink, #233832);
  background: #fff;
  box-shadow: 0 8px 26px rgb(25 57 46 / 16%);
  opacity: 1;
  visibility: visible;
  transform: none !important;
  transition: none;
  pointer-events: auto;
  font-family: var(--pro-ui-font, sans-serif);
  text-align: start;
}
body.pro-mode .business-calendar-event-tooltip[data-schedule-tooltip-open] > strong {
  padding: 11px 13px;
  border-left-color: var(--stylist-color, var(--pro-ui-accent-ink, #286b56));
  border-bottom-color: var(--pro-ui-line, #dce7e3);
  background: var(--pro-ui-accent-soft, #edf7f2);
  color: var(--pro-ui-ink, #233832);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.4;
  white-space: normal;
  overflow-wrap: anywhere;
  overflow: visible;
  text-overflow: clip;
}
body.pro-mode .business-calendar-event-tooltip[data-schedule-tooltip-open] > dl { padding: 5px 13px 10px; }
body.pro-mode .business-calendar-event-tooltip[data-schedule-tooltip-open] > dl > div {
  grid-template-columns: minmax(58px, max-content) minmax(0, 1fr);
  column-gap: 12px;
  align-items: baseline;
}
body.pro-mode .business-calendar-event-tooltip[data-schedule-tooltip-open] dt {
  font-size: 11px;
  font-weight: 450;
  line-height: 1.45;
  letter-spacing: 0;
  text-transform: none;
  color: var(--pro-ui-muted, #697e76);
}
body.pro-mode .business-calendar-event-tooltip[data-schedule-tooltip-open] dd {
  font-size: 12px;
  font-weight: 500;
  line-height: 1.45;
  color: var(--pro-ui-ink, #233832);
  white-space: normal;
  overflow-wrap: anywhere;
}

body.pro-mode .business-calendar-event-tooltip[data-schedule-tooltip-open],
body.pro-mode .business-calendar-event-tooltip[data-schedule-tooltip-open] * {
  -webkit-user-select: text;
  user-select: text;
}
