/* ===== Desktop floating buttons (bottom-right) ===== */
.dcn-float,
.dcn-mnav {
  color-scheme: light; /* stop browser forced-dark-mode from recoloring this widget */
  forced-color-adjust: none;
}
.dcn-float {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.dcn-float__btn {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: auto;
  height: 56px;
  border-radius: 999px;
  background: #DC2626;
  color: #fff;
  box-shadow: 0 4px 14px rgba(0,0,0,.25);
  text-decoration: none;
  white-space: nowrap;
  transition: background .2s ease;
}
.dcn-float__btn:hover {
  background: #252525;
}
.dcn-float__icon {
  flex: 0 0 56px;
  width: 56px;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.dcn-float__icon svg {
  width: 24px;
  height: 24px;
  fill: #fff !important;
}
.dcn-float__label {
  font-family: 'Onest', system-ui, sans-serif;
  font-size: 14px;
  font-weight: 600;
  color: #fff !important;
  padding-right: 20px;
}

/* ===== Mobile app-style bottom nav ===== */
.dcn-mnav {
  display: none;
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
  background: #fff;
  border-top: 1px solid #eee;
  box-shadow: 0 -2px 12px rgba(0,0,0,.08);
  padding-bottom: env(safe-area-inset-bottom, 0);
}
.dcn-mnav__item {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3px;
  padding: 8px 4px 6px;
  color: #252525;
  text-decoration: none;
  font-family: 'Onest', system-ui, sans-serif;
  font-size: 11px;
  font-weight: 600;
}
.dcn-mnav__item svg {
  width: 22px;
  height: 22px;
  fill: #252525;
}
.dcn-mnav__item:nth-child(2) { color: #DC2626; }
.dcn-mnav__item:nth-child(2) svg { fill: #DC2626; }

@media (max-width: 640px) {
  .dcn-float { display: none; }
  .dcn-mnav { display: flex; }
  body { padding-bottom: 64px; }
}
