.mhrf-btn{
  width: 100%;
  border-radius: 18px;
  padding: 14px 14px;
  font-weight: 800;
  border: 1px solid rgba(255,255,255,.10);
  cursor: pointer;
  margin-top: 14px;
}
.mhrf-btn-primary{
  background: var(--mhrf-accent);
  border-color: rgba(255,255,255,.10);
  color: #fff;
}
.mhrf-btn-primary:hover{ background: var(--mhrf-accent-2); }
.mhrf-btn-secondary{
  background: rgba(0,0,0,.35);
  color: var(--mhrf-text);
}
.mhrf-btn-ghost{
  background: transparent;
  color: var(--mhrf-text);
}
.mhrf-btn:disabled{
  opacity:.55;
  cursor:not-allowed;
}
.mhrf-footnote{ margin-top: 14px; font-size: 12px; color: rgba(244,245,247,.55); text-align:center; }

.mhrf-alert{
  margin-top: 12px;
  padding: 10px 12px;
  border-radius: 14px;
  background: rgba(255, 55, 95, .12);
  border: 1px solid rgba(255, 55, 95, .18);
  color: #ffd4dd;
  font-size: 13px;
}
.mhrf-hidden{ display:none !important; }

.mhrf-pill{
  display:inline-block;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.10);
  font-size: 12px;
  color: rgba(244,245,247,.75);
}
.mhrf-panel{
  margin-top: 14px;
  background: rgba(0,0,0,.28);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 18px;
  padding: 14px;
}
.mhrf-panel-row{ display:flex; gap:12px; align-items:flex-start; }
.mhrf-icon{ font-size: 18px; }
.mhrf-strong{ font-weight: 800; }
.mhrf-muted{ color: var(--mhrf-muted); font-size: 13px; line-height: 1.45; }
.mhrf-space-between{ display:flex; justify-content:space-between; align-items:center; gap:14px; }
.mhrf-timer{
  border-radius: 999px;
  padding: 6px 10px;
  background: rgba(192,19,58,.16);
  border: 1px solid rgba(192,19,58,.28);
  font-weight: 800;
  font-size: 12px;
}
.mhrf-kv{ display:flex; justify-content:space-between; gap:10px; padding: 10px 12px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.08); border-radius: 16px; }
.mhrf-kv-label{ color: rgba(244,245,247,.65); font-size: 12px; }
.mhrf-kv-value{ font-weight: 700; font-size: 12px; }
.mhrf-mt{ margin-top: 14px; }
.mhrf-mb{ margin-bottom: 14px; }
.mhrf-right{ float:right; }

.mhrf-progress-label{ font-size: 12px; color: rgba(244,245,247,.75); margin-bottom: 10px; }
.mhrf-progress-bar{ height: 8px; background: rgba(255,255,255,.08); border-radius: 999px; overflow:hidden; }
.mhrf-progress-bar span{ display:block; height:100%; background: rgba(192,19,58,.85); border-radius: 999px; }

.mhrf-note{
  margin-top: 12px;
  padding: 12px 12px;
  border-radius: 16px;
  background: rgba(0,0,0,.25);
  border: 1px solid rgba(255,255,255,.08);
  color: rgba(244,245,247,.70);
  font-size: 13px;
  line-height: 1.45;
}


/* Locked primary CTA (single CTA pattern) */
.mhrf-btn.is-locked{
  opacity: .55;
  cursor: not-allowed;
}
.mhrf-btn.is-locked:hover{
  opacity: .60;
}
