/* Insight K9 family appointment history. Presentation only; LatePoint records and summary handlers stay intact. */
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling {
  display:grid;
  gap:22px;
  min-width:0;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling-hero {
  display:grid;
  gap:10px;
  padding:0 0 22px;
  border-bottom:1px solid var(--ik9-border);
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling-hero .ik9-family-eyebrow {
  margin:0;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling-hero h1 {
  margin:0;
  font-size:clamp(30px,5vw,46px);
  letter-spacing:-.025em;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling-hero p:not(.ik9-family-eyebrow) {
  max-width:760px;
  margin:0;
  color:var(--ik9-muted);
  font-size:17px;
  line-height:1.6;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling-actions {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:6px;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling-dashboard {
  min-width:0;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .latepoint-w,
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .ik9-latepoint-appointment-history {
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  color:var(--ik9-text)!important;
  background:transparent!important;
  opacity:1!important;
  font-family:inherit!important;
  line-height:1.5!important;
}
/* Fallback containment if a builder bypasses server-side cleanup. */
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling :is(
  .customer-dashboard-tabs,
  .tab-content-customer-orders,
  .tab-content-customer-info-form,
  .tab-content-customer-new-appointment-form,
  .new-booking-tile,
  .customer-booking-buttons,
  .part-of-bundle-message,
  .customer-bundle-tile
) { display:none!important; }
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .latepoint-tab-content:not(.tab-content-customer-bookings) {
  display:none!important;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .latepoint-w > a:first-child,
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .latepoint-w > h4:first-of-type {
  display:none!important;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .tab-content-customer-bookings {
  display:block!important;
  min-width:0!important;
  padding:0!important;
  opacity:1!important;
  color:var(--ik9-text)!important;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .latepoint-section-heading-w {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:22px 0 12px;
  padding:0;
  border:0;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .latepoint-section-heading {
  margin:0!important;
  color:var(--ik9-text)!important;
  font:750 22px/1.25 inherit!important;
  letter-spacing:-.01em;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .heading-extra {
  flex:0 0 auto;
  padding:6px 10px;
  border:1px solid var(--ik9-border);
  border-radius:999px;
  background:#f4f6f8;
  color:#4f5b67!important;
  font:700 13px/1.2 inherit!important;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .customer-bookings-tiles {
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px!important;
  min-width:0;
  margin:0;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .customer-booking {
  position:relative;
  display:grid!important;
  grid-template-columns:minmax(0,1fr);
  gap:0;
  min-width:0!important;
  max-width:none!important;
  width:auto!important;
  margin:0!important;
  padding:20px!important;
  border:1px solid var(--ik9-border)!important;
  border-top:4px solid #bc1326!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgb(24 30 38 / 5%)!important;
  color:var(--ik9-text)!important;
  opacity:1!important;
  overflow:hidden;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .customer-booking-service-color {
  display:none!important;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .customer-booking-service-name {
  margin:0 0 6px!important;
  padding:0!important;
  color:var(--ik9-text)!important;
  font:750 22px/1.25 inherit!important;
  letter-spacing:-.01em;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .customer-booking-datetime {
  margin:0 0 16px!important;
  padding:0 0 16px!important;
  border-bottom:1px solid var(--ik9-border);
  color:#52606d!important;
  font:500 16px/1.5 inherit!important;
  opacity:1!important;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .customer-booking-info {
  display:grid!important;
  gap:9px;
  margin:0!important;
  padding:0!important;
  color:var(--ik9-text)!important;
  background:transparent!important;
  opacity:1!important;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .customer-booking-info-row {
  display:grid!important;
  grid-template-columns:minmax(76px,.38fr) minmax(0,1fr);
  gap:12px;
  align-items:start;
  margin:0!important;
  padding:0!important;
  border:0!important;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .booking-info-label {
  color:#65717d!important;
  font:650 14px/1.45 inherit!important;
  opacity:1!important;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .booking-info-value {
  min-width:0;
  color:var(--ik9-text)!important;
  font:650 15px/1.45 inherit!important;
  overflow-wrap:anywhere;
  opacity:1!important;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .booking-info-value[class*="status-"] {
  justify-self:start;
  padding:5px 9px;
  border:1px solid #d8dee5;
  border-radius:999px;
  background:#f4f6f8!important;
  color:#34414d!important;
  font-size:13px!important;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .booking-info-value:is(.status-approved,.status-completed,.status-complete) {
  border-color:#b8dbc9;
  background:#eef8f2!important;
  color:#1c7049!important;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .booking-info-value:is(.status-cancelled,.status-canceled) {
  border-color:#e5c2c6;
  background:#fff1f2!important;
  color:#9e1b2c!important;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .customer-booking-bottom-actions {
  display:flex!important;
  flex-wrap:wrap;
  gap:10px;
  margin:18px 0 0!important;
  padding:16px 0 0!important;
  border-top:1px solid var(--ik9-border)!important;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .customer-booking-bottom-actions > * {
  flex:1 1 150px;
  min-width:0;
  margin:0!important;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .customer-booking-bottom-actions .latepoint-btn {
  display:flex!important;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:100%!important;
  min-height:48px!important;
  margin:0!important;
  padding:11px 14px!important;
  border:1px solid #c4cbd3!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#a51223!important;
  font:700 15px/1.35 inherit!important;
  text-decoration:none!important;
  white-space:normal!important;
  box-shadow:none!important;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .latepoint-message {
  margin:0!important;
  padding:20px!important;
  border:1px solid var(--ik9-border)!important;
  border-radius:12px!important;
  background:#f7f8fa!important;
  color:#52606d!important;
  font:500 16px/1.55 inherit!important;
  text-align:left!important;
  opacity:1!important;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .latepoint-login-form-w {
  max-width:520px!important;
  margin:0 auto!important;
  padding:22px!important;
  border:1px solid var(--ik9-border)!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:none!important;
  opacity:1!important;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling :is(input,select,textarea) {
  min-height:48px;
  max-width:100%;
  font-size:16px!important;
}
.ik9-family-shell[data-ik9-family-shell] .ik9-scheduling-readonly-note {
  margin:0 0 16px;
  padding:12px 14px;
  border-left:4px solid #bc1326;
  border-radius:8px;
  background:#fff4f5;
  color:#3d4650;
  font-size:15px;
  line-height:1.5;
}
@media (max-width:820px) {
  .ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .customer-bookings-tiles {
    grid-template-columns:1fr;
  }
}
@media (max-width:520px) {
  .ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling {
    gap:18px;
  }
  .ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling-hero {
    padding-bottom:18px;
  }
  .ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling-hero h1 {
    font-size:30px;
  }
  .ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling-hero p:not(.ik9-family-eyebrow) {
    font-size:16px;
  }
  .ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling-actions {
    display:grid;
    grid-template-columns:1fr;
  }
  .ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling-actions .ik9-crm-button {
    width:100%;
  }
  .ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .latepoint-section-heading-w {
    align-items:flex-start;
  }
  .ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .latepoint-section-heading {
    font-size:20px!important;
  }
  .ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .customer-booking {
    padding:17px!important;
  }
  .ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .customer-booking-service-name {
    font-size:20px!important;
  }
  .ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .customer-booking-info-row {
    grid-template-columns:76px minmax(0,1fr);
  }
  .ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .customer-booking-bottom-actions {
    display:grid!important;
    grid-template-columns:1fr;
  }
  .ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .customer-booking-bottom-actions > * {
    width:100%;
  }
}
@media print {
  .ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling-hero .ik9-family-scheduling-actions,
  .ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .customer-booking-bottom-actions {
    display:none!important;
  }
  .ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .customer-bookings-tiles {
    grid-template-columns:1fr;
  }
  .ik9-family-shell[data-ik9-family-shell] .ik9-family-scheduling .customer-booking {
    break-inside:avoid;
    box-shadow:none!important;
  }
}
