/* HITL Checkpoint Simulator — scoped under .his, the section's own class.
   Design tokens match the site's existing palette (see insights/mq-widget.css):
   orange #FF7900, teal #07A3D1, ink #14181C, near-black card #000/#111. */
.his, .his * { box-sizing: border-box; }
.his { background:#000; color:#fff; border-radius:14px; overflow:hidden; margin:2.5rem 0; padding:2rem 1.5rem 2.25rem; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif; }
.his .his-eyebrow { font-size:.68rem; font-weight:700; color:#07A3D1; text-transform:uppercase; letter-spacing:.08em; margin:0 0 .6rem; }
.his .his-title { font-size:1.5rem !important; font-weight:800 !important; color:#fff !important; line-height:1.25 !important; margin:0 0 .8rem !important; padding:0 !important; border:none !important; }
.his .his-title em { color:#FF7900; font-style:normal; }
.his .his-intro { font-size:.92rem; color:rgba(255,255,255,.7); line-height:1.6; margin:0 0 1.6rem; max-width:64ch; }
.his .his-steps { list-style:none; margin:0 0 1.5rem; padding:0; display:flex; flex-direction:column; gap:.8rem; }
.his .his-step { margin:0; }
.his .his-fieldset { border:1px solid rgba(255,255,255,.1); border-radius:10px; padding:1rem 1.1rem; margin:0; background:#0d0d0d; }
.his .his-legend { padding:0 0 .75rem; font-size:.92rem; font-weight:600; color:#fff; line-height:1.5; display:flex; align-items:baseline; gap:.6rem; }
.his .his-num { flex-shrink:0; width:22px; height:22px; border-radius:50%; background:rgba(7,163,209,.18); color:#07A3D1; font-size:.72rem; font-weight:800; display:inline-flex; align-items:center; justify-content:center; }
.his .his-toggle { display:flex; gap:.6rem; flex-wrap:wrap; }
.his .his-opt { flex:1 1 180px; min-height:44px; background:#111 !important; border:1.5px solid rgba(255,255,255,.14) !important; border-radius:8px !important; padding:.6rem .9rem !important; font-size:.85rem !important; font-weight:600 !important; color:rgba(255,255,255,.8) !important; cursor:pointer !important; text-align:center !important; box-shadow:none !important; }
.his .his-opt:hover { border-color:rgba(7,163,209,.6) !important; }
.his .his-opt:focus-visible { outline:3px solid #FF7900; outline-offset:2px; }
.his .his-opt[aria-pressed="true"] { border-color:#07A3D1 !important; background:rgba(7,163,209,.16) !important; color:#fff !important; }
.his .his-opt[aria-pressed="true"][data-value="human"] { border-color:#FF7900 !important; background:rgba(255,121,0,.16) !important; }
.his .his-result-wrap { min-height:64px; }
.his .his-progress { font-size:.78rem; color:rgba(255,255,255,.5); margin:0 0 1rem; }
.his .his-submit { min-height:44px; background:#FF7900 !important; color:#000 !important; border:none !important; border-radius:8px !important; padding:.75rem 1.6rem !important; font-size:.9rem !important; font-weight:700 !important; cursor:pointer !important; box-shadow:none !important; }
.his .his-submit:disabled { background:rgba(255,121,0,.3) !important; cursor:not-allowed !important; }
.his .his-submit:focus-visible { outline:3px solid #07A3D1; outline-offset:2px; }
.his .his-result { margin-top:1.2rem; background:#0d0d0d; border:1px solid rgba(255,255,255,.1); border-radius:12px; padding:1.3rem 1.4rem; }
.his .his-result[hidden] { display:none; }
.his .his-score-row { display:flex; align-items:baseline; gap:.9rem; margin-bottom:.7rem; flex-wrap:wrap; }
.his .his-score-num { font-size:2.2rem; font-weight:800; letter-spacing:-1px; }
.his .his-score-band { font-size:1rem; font-weight:700; }
.his .his-result-copy { font-size:.9rem; color:rgba(255,255,255,.75); line-height:1.65; margin:0 0 .5rem; }
.his .his-result-copy strong { color:#FF7900; }
.his .his-benchmark { font-size:.8rem; color:rgba(255,255,255,.5); line-height:1.6; margin:0 0 1rem; padding-top:.6rem; border-top:1px solid rgba(255,255,255,.08); }
.his .his-actions { display:flex; gap:.8rem; flex-wrap:wrap; align-items:center; }
.his .his-retry { min-height:44px; background:transparent !important; border:1.5px solid rgba(255,255,255,.18) !important; border-radius:8px !important; padding:.6rem 1.2rem !important; font-size:.82rem !important; font-weight:600 !important; color:rgba(255,255,255,.75) !important; cursor:pointer !important; box-shadow:none !important; }
.his .his-retry:hover { border-color:#FF7900 !important; color:#FF7900 !important; }
.his .his-retry:focus-visible { outline:3px solid #07A3D1; outline-offset:2px; }

/* Lead capture (Phase 6) */
.his .his-lead { margin-top:1.2rem; padding-top:1.1rem; border-top:1px solid rgba(255,255,255,.1); }
.his .his-lead-label { display:block; font-size:.8rem; color:rgba(255,255,255,.6); margin-bottom:.6rem; line-height:1.5; }
.his .his-lead-row { display:flex; gap:.6rem; flex-wrap:wrap; margin-bottom:.6rem; }
.his .his-lead-field { display:flex; flex-direction:column; gap:.3rem; flex:1 1 200px; }
.his .his-lead-field label { font-size:.72rem; color:rgba(255,255,255,.55); }
.his .his-lead input, .his .his-lead select { min-height:44px; background:rgba(255,255,255,.06) !important; border:1px solid rgba(255,255,255,.16) !important; border-radius:7px !important; padding:.55rem .8rem !important; font-size:.85rem !important; color:#fff !important; box-shadow:none !important; }
.his .his-lead input:focus-visible, .his .his-lead select:focus-visible { outline:3px solid #07A3D1; outline-offset:1px; }
.his .his-consent { display:flex; align-items:flex-start; gap:.5rem; font-size:.76rem; color:rgba(255,255,255,.6); line-height:1.5; margin:.5rem 0 .8rem; }
.his .his-consent input { min-width:18px; min-height:18px; margin-top:2px; }
.his .his-consent a { color:#07A3D1; }
.his .his-lead-submit { min-height:44px; background:#07A3D1 !important; color:#000 !important; border:none !important; border-radius:8px !important; padding:.65rem 1.3rem !important; font-size:.85rem !important; font-weight:700 !important; cursor:pointer !important; box-shadow:none !important; }
.his .his-lead-submit:disabled { opacity:.5 !important; cursor:not-allowed !important; }
.his .his-lead-msg { font-size:.8rem; margin-top:.6rem; min-height:1.2em; }
.his .his-lead-msg[data-state="error"] { color:#FCA5A5; }
.his .his-lead-msg[data-state="success"] { color:#4ADE80; }
.his .hp-field { position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.his .his-noscript { background:#0d0d0d; border:1px solid rgba(255,255,255,.1); border-radius:12px; padding:1.2rem 1.4rem; font-size:.88rem; color:rgba(255,255,255,.75); line-height:1.65; }

@media (prefers-reduced-motion: no-preference) {
  .his .his-opt, .his .his-submit, .his .his-retry, .his .his-lead-submit { transition: border-color .15s, background-color .15s, color .15s; }
}
@media (min-width:640px) {
  .his { padding:2.6rem 3rem; }
  .his .his-title { font-size:1.9rem !important; }
  .his .his-intro { font-size:1rem; }
  .his .his-opt { font-size:.9rem !important; }
}
