/* Bounded appointment shortcuts, independent of the retired WordPress CSS. */
body.has-reservation-bar { padding-bottom:calc(88px + env(safe-area-inset-bottom, 0px)); }
html { scroll-padding-bottom:100px; }
.fixed-sidebar-icons {
  position:fixed; inset:auto 20px 12px auto; z-index:90;
  display:flex; align-items:center; justify-content:center; gap:8px;
  width:auto; max-width:calc(100% - 24px); margin:0; padding:8px 12px;
  background:#fff; border:1px solid #deded8; border-radius:12px;
  box-shadow:0 3px 16px #0002; line-height:1.2;
}
.fixed-sidebar-icons > a {
  display:flex; flex:0 0 72px; flex-direction:column; align-items:center;
  justify-content:center; gap:4px; width:72px; min-height:60px;
  margin:0; padding:0; color:#333; text-decoration:none; font-size:12px;
  font-weight:600; white-space:nowrap; border-radius:5px;
}
.fixed-sidebar-icons img { display:block; width:40px; height:40px; max-width:40px; object-fit:contain; border-radius:5px; }
.fixed-sidebar-icons > a:focus-visible { outline:3px solid #137d70; outline-offset:3px; }
body.has-reservation-bar .p-fixBtnWrap { bottom:calc(100px + env(safe-area-inset-bottom, 0px)); }
html[data-spmenu="opened"] .fixed-sidebar-icons,
body:has(.c-modal.is-open) .fixed-sidebar-icons { visibility:hidden; }
@media (max-width:959px) {
  .fixed-sidebar-icons {
    left:0; right:0; bottom:0; width:100%; max-width:none; gap:0;
    padding:6px 8px calc(6px + env(safe-area-inset-bottom, 0px));
    border-radius:0; border-width:1px 0 0; box-shadow:0 -2px 12px #0001;
  }
  .fixed-sidebar-icons > a { flex:1 1 0; width:auto; min-width:0; }
}
@media print {
  .fixed-sidebar-icons { display:none; }
  body.has-reservation-bar { padding-bottom:0; }
}
