:root {
  font-family: Arial, Helvetica, sans-serif;
  color: #1d2530;
  background: #f4f6f8;
}
* { box-sizing: border-box; }
body { margin: 0; }
header {
  display:flex; justify-content:space-between; align-items:center;
  padding:16px 24px; background:#fff; border-bottom:1px solid #d9dee5;
}
nav { display:flex; gap:16px; flex-wrap:wrap; }
a { color:#1559a5; text-decoration:none; }
main { max-width:1400px; margin:0 auto; padding:24px; }
h1,h2 { margin-top:0; }
.card {
  background:#fff; border:1px solid #d9dee5; border-radius:10px;
  padding:20px; box-shadow:0 2px 8px rgba(0,0,0,.04);
}
.grid {
  display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:18px;
}
.toolbar { display:flex; justify-content:space-between; align-items:center; gap:16px; }
.filter { display:flex; gap:10px; margin:0 0 20px 0; }
label { display:block; margin-bottom:14px; font-weight:600; }
input, select, textarea {
  width:100%; padding:10px; border:1px solid #bcc5cf; border-radius:6px; margin-top:6px;
  font:inherit; background:#fff;
}
button, .button {
  display:inline-block; border:0; border-radius:6px; padding:10px 14px;
  background:#1559a5; color:#fff; cursor:pointer; font:inherit;
}
.secondary { background:#657384; color:#fff; }
.danger { background:#ad2525; }
.small { padding:6px 9px; font-size:.9rem; }
.event {
  border-left:5px solid #1559a5; padding:12px; margin:12px 0; background:#f8fbff; border-radius:6px;
}
.unavailable { border-left-color:#717171; background:#f2f2f2; }
.event-time { font-weight:700; margin-bottom:5px; }
.notes { margin-top:8px; font-style:italic; }
.status { margin:8px 0; font-size:.9rem; color:#56616d; }
.muted { color:#6b7580; }
.error {
  padding:10px 12px; background:#ffe8e8; border:1px solid #e8aaaa; border-radius:6px; margin-bottom:14px;
}
.form-card { max-width:850px; margin:auto; }
.two-col { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.three-col { display:grid; grid-template-columns:2fr 1fr 1fr; gap:14px; }
.login-body { min-height:100vh; display:grid; place-items:center; padding:20px; }
.login-card { width:min(420px,100%); }
@media (max-width:700px) {
  header { align-items:flex-start; flex-direction:column; gap:12px; }
  .two-col,.three-col { grid-template-columns:1fr; }
  .toolbar { flex-wrap:wrap; }
}

.week-heading { text-align:center; }
.weekly-estimator {
  margin:22px 0 30px;
}
.weekly-estimator-title {
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:8px;
}
.weekly-estimator-title h2 { margin:0; }
.weekly-grid {
  display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:8px;
}
.weekly-day {
  min-height:230px;
  background:#fff;
  border:1px solid #d9dee5;
  border-radius:8px;
  padding:8px;
}
.weekly-day-header {
  display:flex;
  justify-content:space-between;
  gap:8px;
  padding-bottom:8px;
  margin-bottom:8px;
  border-bottom:1px solid #e1e5ea;
}
.week-event {
  border-left:4px solid #1559a5;
  background:#f8fbff;
  border-radius:5px;
  padding:8px;
  margin:8px 0;
  font-size:.92rem;
}
.week-event.unavailable {
  border-left-color:#717171;
  background:#f2f2f2;
}
.week-description {
  margin-top:6px;
  white-space:normal;
}
.weekly-empty {
  padding:10px 4px;
  color:#6b7580;
  font-style:italic;
}
.compact-label {
  margin:0;
  min-width:180px;
}
.compact-label input,
.compact-label select {
  margin-top:4px;
}
@media (max-width:1000px) {
  .weekly-grid {
    grid-template-columns:1fr;
  }
  .weekly-day {
    min-height:0;
  }
}

.helper-text { display:block; margin-top:6px; color:#66717d; font-weight:normal; }
.calendar-toolbar { display:flex; justify-content:space-between; align-items:flex-end; gap:18px; margin-bottom:12px; }
.calendar-nav { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.calendar-nav h1 { margin:0 0 0 8px; font-size:1.25rem; }
.calendar-filter label { margin:0; min-width:180px; }
.estimator-legend { display:flex; flex-wrap:wrap; gap:16px; margin:8px 0 14px; }
.legend-item { display:flex; align-items:center; gap:6px; font-size:.92rem; }
.legend-dot { width:12px; height:12px; border-radius:50%; display:inline-block; }
.calendar-message { min-height:26px; margin-bottom:4px; }
.error-message { color:#9a1e1e; }
.success-message { color:#21643a; }
.calendar-shell { border:1px solid #cfd6de; background:#fff; overflow-x:auto; }
.calendar-header { display:grid; grid-template-columns:72px repeat(7, minmax(120px, 1fr)); border-bottom:1px solid #cfd6de; background:#fff; }
.time-header { border-right:1px solid #dfe4e8; }
.day-header { text-align:center; padding:10px 4px; border-right:1px solid #dfe4e8; color:#4e5966; }
.day-header strong { display:block; font-size:1.2rem; color:#1d2530; margin-top:2px; }
.calendar-body { display:grid; grid-template-columns:72px repeat(7, minmax(120px, 1fr)); height:880px; position:relative; }
.time-axis { position:relative; height:880px; border-right:1px solid #cfd6de; background:#fafbfc; }
.time-label { position:absolute; right:8px; transform:translateY(-50%); font-size:.78rem; color:#68737f; white-space:nowrap; }
.day-column { position:relative; height:880px; border-right:1px solid #dfe4e8; background:#fff; transition:background .12s ease; }
.day-column.drop-target { background:#f1f7ff; }
.quarter-line { position:absolute; left:0; right:0; border-top:1px solid #edf0f2; pointer-events:none; }
.quarter-line.hour-line { border-top-color:#cfd6de; }
.calendar-event { position:absolute; left:3px; right:3px; z-index:5; border-radius:5px; padding:5px 6px; overflow:hidden; font-size:.76rem; line-height:1.25; border:1px solid rgba(0,0,0,.18); cursor:grab; color:#17202a; }
.calendar-event:active { cursor:grabbing; }
.calendar-event.dragging { opacity:.5; }
.event-topline { display:flex; justify-content:space-between; gap:4px; }
.event-topline span { font-size:.7rem; white-space:nowrap; }
.event-time-text { font-weight:600; margin-top:2px; }
.event-address, .event-request { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.event-request { margin-top:2px; }
.estimator-1 { background:#d9ecff; }
.estimator-2 { background:#dff3df; }
.estimator-3 { background:#f8e5cf; }
.estimator-4 { background:#eadff7; }
.estimator-5 { background:#f7e0e6; }
.estimator-6 { background:#e2eef0; }
.legend-dot.estimator-1 { background:#7eb8ee; }
.legend-dot.estimator-2 { background:#80bf80; }
.legend-dot.estimator-3 { background:#d4a36e; }
.legend-dot.estimator-4 { background:#a98bd0; }
.legend-dot.estimator-5 { background:#d590a2; }
.legend-dot.estimator-6 { background:#79aeb5; }
@media (max-width:900px) { .calendar-toolbar { align-items:stretch; flex-direction:column; } }

.calendar-actions {
  display:flex;
  align-items:flex-end;
  gap:14px;
  flex-wrap:wrap;
  margin:8px 0 12px;
}
.calendar-actions label {
  margin:0;
  min-width:220px;
}
.calendar-block {
  position:absolute;
  left:3px;
  right:3px;
  z-index:4;
  border-radius:5px;
  padding:5px 6px;
  overflow:hidden;
  font-size:.76rem;
  line-height:1.25;
  border:1px solid #b9c0c8;
}
.calendar-block.unavailable {
  color:#17202a;
  cursor:pointer;
  border-color:rgba(0,0,0,.18);
}
.calendar-block span {
  display:block;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.calendar-actions {
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin:8px 0 12px;
}

.calendar-modal[hidden] {
  display:none;
}

.calendar-modal {
  position:fixed;
  inset:0;
  z-index:1000;
  background:rgba(0, 0, 0, .38);
  display:flex;
  align-items:flex-start;
  justify-content:center;
  padding:5vh 18px 24px;
  overflow-y:auto;
}

.calendar-modal-dialog {
  width:min(760px, 100%);
  background:#fff;
  border-radius:10px;
  border:1px solid #cfd6de;
  padding:20px;
}

.modal-header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px;
}

.modal-header h2 {
  margin:0;
}

.modal-close {
  width:36px;
  height:36px;
  padding:0;
  border-radius:50%;
  background:#657384;
  font-size:1.4rem;
  line-height:1;
}

.entry-type-switch {
  display:flex;
  gap:8px;
  margin-bottom:16px;
}

.entry-type {
  background:#e7ebef;
  color:#26313c;
}

.entry-type.active {
  background:#1559a5;
  color:#fff;
}

.modal-grid {
  display:grid;
  gap:14px;
}

.modal-grid.two {
  grid-template-columns:1fr 1fr;
}

.modal-grid.three {
  grid-template-columns:2fr 1fr 1fr;
}

.modal-footer {
  display:flex;
  justify-content:flex-end;
  margin-top:10px;
}

.calendar-modal textarea {
  resize:vertical;
}

@media (max-width:700px) {
  .modal-grid.two,
  .modal-grid.three {
    grid-template-columns:1fr;
  }

  .calendar-modal {
    padding:12px;
  }
}

.email-option {
  display:flex;
  align-items:center;
  gap:7px;
  margin-top:8px;
  font-weight:normal;
  font-size:.9rem;
}
.email-option input[type="checkbox"] {
  width:auto;
  margin:0;
}

.remove-block {
  position:absolute;
  top:2px;
  right:3px;
  z-index:8;
  width:18px;
  height:18px;
  padding:0;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.82);
  color:#39424c;
  font-size:14px;
  line-height:16px;
  cursor:pointer;
}
.remove-block:hover {
  background:#fff;
}
.calendar-event,
.calendar-block.unavailable {
  min-width:0;
}

.calendar-block.estimator-1 { background:#d9ecff; }
.calendar-block.estimator-2 { background:#dff3df; }
.calendar-block.estimator-3 { background:#f8e5cf; }
.calendar-block.estimator-4 { background:#eadff7; }
.calendar-block.estimator-5 { background:#f7e0e6; }
.calendar-block.estimator-6 { background:#e2eef0; }

.closed-day-header {
  background:#eceff2;
}
.closed-label {
  display:inline-block;
  margin-top:4px;
  padding:2px 6px;
  border-radius:10px;
  background:#5c6670;
  color:#fff;
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.04em;
}
.closed-day {
  background:#f1f2f4;
}
.closure-overlay {
  position:absolute;
  inset:0;
  z-index:2;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  padding-top:28px;
  background:rgba(226, 229, 233, .72);
  color:#4b545d;
  text-align:center;
  pointer-events:none;
}
.closure-overlay strong {
  font-size:1rem;
}
.closure-overlay span {
  margin-top:4px;
  padding:0 8px;
  font-size:.8rem;
}
.closed-day .calendar-event,
.closed-day .calendar-block {
  z-index:6;
}
.closure-list {
  display:grid;
  gap:8px;
  margin-bottom:18px;
}
.closure-row {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:10px 0;
  border-bottom:1px solid #e1e5ea;
}

.calendar-block.unavailable {
  cursor:grab;
}
.calendar-block.unavailable:active {
  cursor:grabbing;
}
.calendar-block.unavailable.dragging {
  opacity:.5;
}

.calendar-event,
.calendar-block.unavailable {
  touch-action:none;
  user-select:none;
}

.calendar-dragging {
  cursor:grabbing;
}

.day-column.drop-target {
  outline:2px solid #1559a5;
  outline-offset:-2px;
}

.closure-banner {
  margin:0 0 16px;
  padding:10px 12px;
  border-radius:6px;
  background:#eceff2;
  border:1px solid #cfd6de;
  color:#39424c;
}

.day-appointment {
  cursor:pointer;
}
.day-appointment:hover {
  outline:1px solid #9eabb8;
}
.form-actions {
  display:flex;
  gap:10px;
  align-items:center;
}

.weekend-header {
  background:#f3f5f7;
}

/* v50 current-day highlight: intentionally distinct from weekend gray */
.today-header {
  background:#fff8e1;
}
.today-header strong {
  font-weight:800;
}
.today-column {
  background-color:#fffdf4;
}
.today-column.weekend-column {
  background-color:#fffdf4;
}
.closed-day.today-column {
  background:#f1f2f4;
}
.closed-day-header.today-header {
  background:#eceff2;
}

.weekend-column {
  background-color:#f7f8fa;
}

.closed-day.weekend-column {
  background-color:#f1f2f4;
}

.choice-dialog {
  max-width:420px;
}

.choice-actions {
  display:flex;
  gap:12px;
  justify-content:flex-end;
  margin-top:22px;
}

.calendar-drag-ghost {
  opacity:.78;
  box-shadow:0 8px 24px rgba(0,0,0,.22);
}

.dragging-source {
  opacity:.28;
}

.calendar-event,
.calendar-block.unavailable {
  cursor:grab;
  touch-action:none;
  user-select:none;
}

.calendar-dragging,
.calendar-dragging * {
  cursor:grabbing !important;
}

.day-column.drop-target {
  outline:2px solid #4d6f91;
  outline-offset:-2px;
}

.choice-actions button {
  min-width:90px;
}

.appointment-action-row {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.danger-button {
  background:#b42318;
  border-color:#b42318;
  color:#fff;
}

.danger-button:hover {
  background:#8f1c13;
  border-color:#8f1c13;
}

.estimator-settings-list { display:grid; gap:14px; }
.estimator-settings-row { display:grid; grid-template-columns:110px minmax(220px,1.4fr) 120px minmax(210px,1.3fr) minmax(180px,1.1fr) auto; gap:12px; align-items:end; padding:14px; border:1px solid #d9dee5; border-radius:8px; }
.estimator-settings-row input[type="color"] { width:72px; height:40px; padding:2px; }
.checkbox-line { display:flex; align-items:center; gap:8px; }
.checkbox-line input[type="checkbox"] { width:auto; }
@media (max-width:1100px) { .estimator-settings-row { grid-template-columns:1fr 1fr; } }

.admin-page {
  display:grid;
  gap:18px;
}

.admin-top-grid {
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:18px;
  align-items:start;
}

.admin-wide-card {
  width:100%;
  overflow:hidden;
}

.compact-list {
  margin-top:0;
  padding-left:20px;
}

.admin-user-list {
  display:grid;
  gap:8px;
  margin-bottom:20px;
}

.admin-user-row {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding:10px 0;
  border-bottom:1px solid #e2e6ea;
}

.admin-user-actions {
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
}

.admin-user-actions form,
.estimator-login-tools form {
  margin:0;
}

.estimator-settings-list {
  display:grid;
  gap:10px;
}

.estimator-settings-row {
  display:grid;
  grid-template-columns:
    minmax(125px, .8fr)
    minmax(210px, 1.4fr)
    110px
    minmax(190px, 1.3fr)
    minmax(170px, 1.15fr)
    minmax(210px, 1.25fr)
    auto;
  gap:12px;
  align-items:end;
  padding:14px;
  border:1px solid #d9dee5;
  border-radius:8px;
  background:#fbfcfd;
}

.estimator-settings-row label {
  margin:0;
}

.estimator-settings-name {
  align-self:center;
}

.estimator-settings-row input[type="color"] {
  width:72px;
  height:40px;
  padding:2px;
}

.setting-check {
  align-self:center;
  margin:0;
}

.login-status {
  margin-top:5px;
  font-size:.78rem;
  color:#6b7580;
}

.login-status.enabled {
  color:#21643a;
  font-weight:600;
}

.estimator-login-tools {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin:-4px 8px 2px;
  padding:0 8px 8px;
}

@media (max-width: 1180px) {
  .admin-top-grid {
    grid-template-columns:1fr 1fr;
  }

  .admin-top-grid > .card:last-child {
    grid-column:1 / -1;
  }

  .estimator-settings-row {
    grid-template-columns:1fr 1fr;
  }

  .estimator-settings-row > button {
    justify-self:start;
  }
}

@media (max-width: 720px) {
  .admin-top-grid,
  .estimator-settings-row {
    grid-template-columns:1fr;
  }

  .admin-top-grid > .card:last-child {
    grid-column:auto;
  }

  .admin-user-row,
  .estimator-login-tools {
    align-items:flex-start;
    flex-direction:column;
  }
}

.estimator-admin-list-item {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:8px;
}

.estimator-admin-list-item form {
  margin:0;
}

.event-scheduled-by,
.scheduled-by {
  margin-top:3px;
  font-size:.69rem;
  opacity:.78;
}

.calendar-event,
.calendar-block.unavailable {
  min-width:0;
  box-sizing:border-box;
}

.calendar-event .event-topline,
.calendar-block.unavailable .event-topline {
  min-width:0;
}

.calendar-event .event-topline strong,
.calendar-block.unavailable .event-topline strong {
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}


.event-division, .division-label { margin-top:3px; font-size:.72rem; font-weight:700; }
.division-admin-list { display:grid; gap:10px; margin-bottom:18px; }
.division-admin-row { display:grid; grid-template-columns:minmax(230px,1.7fr) minmax(140px,.8fr) minmax(200px,1.2fr) minmax(220px,1.3fr) auto auto; gap:10px; align-items:end; padding:12px; border:1px solid #d9dee5; border-radius:8px; background:#fbfcfd; }
.division-admin-row label, .division-add-form label { margin:0; }
.division-add-form { display:grid; grid-template-columns:minmax(230px,1.7fr) minmax(140px,.8fr) minmax(200px,1.2fr) minmax(220px,1.3fr) auto; gap:10px; align-items:end; }
@media (max-width:1100px) { .division-admin-row, .division-add-form { grid-template-columns:1fr 1fr; } }
@media (max-width:720px) { .division-admin-row, .division-add-form { grid-template-columns:1fr; } }

.estimator-name-form {
  display:flex;
  align-items:center;
  gap:8px;
  margin:0;
  flex:1 1 320px;
}
.estimator-name-form input {
  min-width:180px;
  margin:0;
}
.estimator-email {
  flex:1 1 220px;
}

/* v32 compact appointment text */
.calendar-event { font-size:.70rem; line-height:1.18; }
.calendar-event .event-request,
.calendar-event .event-business-name,
.calendar-event .event-division,
.calendar-event .event-scheduled-by { font-size:.64rem; }

/* v34 scheduling refinements */
.calendar-body,
.time-axis,
.day-column {
  height:840px;
}
.late-hour-shade {
  position:absolute;
  left:0;
  right:0;
  top:760px;
  height:80px;
  background:rgba(80, 88, 98, .09);
  pointer-events:none;
  z-index:1;
}
.start-label { transform:translateY(0); top:2px !important; }
.customer-under-business { font-weight:600; margin-top:2px; }
.recurrence-options { display:flex; gap:18px; flex-wrap:wrap; align-items:center; }
.recurrence-options .checkbox-line { margin-bottom:10px; }
.inline-scope { width:auto; display:inline-block; margin:6px 8px 0 0; padding:6px 8px; }
.block-action-row,
.appointment-action-row { display:flex; gap:10px; justify-content:flex-end; width:100%; }
.danger-button { background:#ad2525; }
.appointment-view-details { display:grid; gap:8px; }
.appointment-view-details h3 { margin:0 0 4px; }
.audit-list { display:grid; gap:8px; }
.audit-row { display:grid; grid-template-columns:minmax(170px, auto) minmax(150px, auto) minmax(180px, auto) auto; gap:10px 16px; align-items:start; padding:10px 0; border-bottom:1px solid #e4e8ec; }
.audit-row small { grid-column:1 / -1; overflow-wrap:anywhere; }
@media (max-width:800px) { .audit-row { grid-template-columns:1fr; } .audit-row small { grid-column:auto; } }

.day-action-row { display:flex; gap:8px; align-items:center; margin-top:8px; }
.day-action-row form { margin:0; }

.customer-absent-flag { font-weight: 700; font-size: 0.78em; margin: 2px 0; }
.warning-button { background:#b56a00; color:white; margin-right:8px; }

.customer-absent-flag.prominent { color:#b42318; font-weight:800; letter-spacing:.01em; margin:4px 0; }
.customer-notify-suppressed { color:#59636e; font-weight:600; margin:3px 0; }
.success-banner {
  max-width: 720px;
  margin: 16px auto;
  padding: 12px 14px;
  border: 1px solid #9bcaa9;
  border-radius: 8px;
  background: #eef8f1;
  color: #21643a;
  font-weight: 600;
}
.form-help {
  margin-top: -4px;
  color: #555;
  font-size: 0.95rem;
}
.password-manager-username {
  position: absolute !important;
  left: -10000px !important;
  top: auto !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}



/* v48 admin dashboard and footer */
.brand-link { color: inherit; text-decoration: none; }
.app-footer { text-align: center; padding: 18px 12px 24px; font-size: 0.82rem; color: #64748b; }
.admin-dashboard-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 16px; margin-top: 16px; }
.admin-dashboard-card { display:block; padding:20px; border:1px solid #d8dee8; border-radius:12px; background:#fff; text-decoration:none; color:inherit; box-shadow:0 2px 8px rgba(15,23,42,.05); }
.admin-dashboard-card:hover { transform: translateY(-1px); box-shadow:0 4px 12px rgba(15,23,42,.09); }
.admin-dashboard-card h2 { margin-top:0; }
.audit-table { display:grid; gap:0; border:1px solid #d8dee8; border-radius:10px; overflow:hidden; }
.audit-table-head,.audit-table-row { display:grid; grid-template-columns: 190px minmax(160px,1fr) minmax(180px,1fr) minmax(280px,2fr); gap:12px; padding:10px 12px; align-items:start; }
.audit-table-head { font-weight:700; background:#f3f6fa; }
.audit-table-row { border-top:1px solid #e5e9f0; }
@media (max-width: 760px) { .audit-table-head { display:none; } .audit-table-row { grid-template-columns:1fr; gap:4px; } }

/* v50 admin navigation */
.admin-back-link {
  display:inline-block;
  margin:0 0 12px 2px;
  color:#475569;
  font-weight:600;
  text-decoration:none;
}
.admin-back-link:hover { color:#b42318; text-decoration:underline; }
.estimator-settings-row {
  grid-template-columns:minmax(135px,.8fr) minmax(220px,1.2fr) minmax(270px,1.55fr) 110px minmax(300px,1.7fr) auto;
}
.estimator-email-field input { font-size:.88rem; }
.estimator-notification-options { display:grid; gap:8px; align-self:center; }
.estimator-settings-actions { display:flex; gap:8px; align-items:end; }
.estimator-login-tools { justify-content:flex-start; }
.estimator-login-tools > div { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.estimator-login-email { font-size:.86rem; }
@media (max-width:1180px) { .estimator-settings-row { grid-template-columns:1fr 1fr; } }
@media (max-width:720px) { .estimator-settings-row { grid-template-columns:1fr; } }


/* v50 appointment print/confirmation */
.scheduled-confirmation-summary { margin:12px 0 18px; line-height:1.6; }
.scheduled-confirmation-summary strong { display:block; font-size:1.05rem; }
