/* Sticky checkout bar for the Blesta order wizard ("boxes" style).
   Installed by deploy/blesta-order-ux/install.sh. Button colors come from the brand theme's .btn-success. */
:root { --hb-cbar-h: 0px; }

.hb-cbar {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 1030;
  padding: 12px 16px calc(12px + env(safe-area-inset-bottom));
  background: #ffffff; color: #121b18;
  border-top: 1px solid #dcdfe3;
  box-shadow: 0 -8px 24px rgba(0, 0, 0, .08);
  transform: translateY(100%); opacity: 0; visibility: hidden;
  transition: transform .28s cubic-bezier(.2, .8, .2, 1), opacity .2s ease, visibility 0s linear .28s;
  will-change: transform;
}
.hb-cbar[data-state="open"] { transform: none; opacity: 1; visibility: visible; transition-delay: 0s; }

.hb-cbar__inner { max-width: 1110px; margin: 0 auto; display: flex; align-items: center; gap: 16px; }
.hb-cbar__summary { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; line-height: 1.3; }
.hb-cbar__eyebrow { font-size: 12px; text-transform: uppercase; letter-spacing: .04em; color: #5b6560; }
.hb-cbar__name { font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.hb-cbar__term { font-size: 14px; color: #374151; }
.hb-cbar__btn { flex: 0 0 auto; min-height: 48px; white-space: nowrap; }
.hb-cbar__btn:focus-visible { outline: 3px solid #1c7ed6; outline-offset: 2px; }

/* Keep the last row of cards and any focused control clear of the bar (WCAG 2.4.11). */
body.hb-cbar-open { padding-bottom: var(--hb-cbar-h); }
html.hb-cbar-open { scroll-padding-bottom: calc(var(--hb-cbar-h) + 16px); }

.hb-sr-only {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}

@media (max-width: 600px) {
  .hb-cbar__inner { flex-wrap: wrap; gap: 8px; }
  .hb-cbar__btn { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .hb-cbar { transform: none; transition: opacity .01s, visibility 0s; }
}
