/* ck-quiz-ibs — Identity Blind Spot Score quiz (campaign interactive widget).
   Self-contained + scoped under #ibs-root. The theme-bleed guard at the bottom
   beats senzing-new's forced <a> / button styles (see memory
   senzing-theme-bleed-guard-for-embeds). */

#ibs-root {
  --obsidian: #0d0d0d;
  --obsidian-2: #18170f;
  --ember: #e85c26;
  --ember-bright: #ff4e1f;
  --off-white: #f7f5f2;
  --muted: #a39c8f;
  --line: #2e2b22;
  background: var(--obsidian);
  color: var(--off-white);
  font-family: 'Helvetica Neue', Arial, sans-serif;
  border-radius: 14px;
  padding: 40px 36px 34px;
  max-width: 620px;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
}
#ibs-root * { box-sizing: border-box; }
#ibs-root .eyebrow {
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 11px;
  font-weight: 700;
  color: var(--ember);
  margin-bottom: 10px;
}
#ibs-root h1 {
  font-family: Georgia, 'Times New Roman', serif;
  font-weight: 600;
  font-size: 27px;
  line-height: 1.25;
  margin: 0 0 12px;
  color: var(--off-white);
}
#ibs-root .lede {
  color: var(--muted);
  font-size: 14px;
  line-height: 1.6;
  margin: 0 0 26px;
  max-width: 480px;
}
#ibs-root #ibs-progress {
  height: 3px;
  background: var(--line);
  border-radius: 2px;
  margin-bottom: 30px;
  overflow: hidden;
}
#ibs-root #ibs-progress-fill {
  height: 100%;
  background: linear-gradient(90deg, var(--ember), var(--ember-bright));
  width: 0%;
  transition: width 0.35s ease;
}
#ibs-root .ibs-q-num {
  font-size: 11px;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: 10px;
}
#ibs-root .ibs-q-text {
  font-size: 19px;
  line-height: 1.4;
  margin: 0 0 22px;
  max-width: 500px;
}
#ibs-root .ibs-option {
  display: block;
  width: 100%;
  text-align: left;
  background: var(--obsidian-2);
  border: 1px solid var(--line);
  color: var(--off-white);
  padding: 14px 16px;
  border-radius: 8px;
  font-size: 14px;
  margin-bottom: 10px;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease;
  font-family: inherit;
}
#ibs-root .ibs-option:hover {
  border-color: var(--ember);
  background: #201d15;
}
#ibs-root .ibs-back {
  background: none;
  border: none;
  color: var(--muted);
  font-size: 12.5px;
  cursor: pointer;
  padding: 0;
  margin-top: 4px;
  text-decoration: underline;
  font-family: inherit;
}
#ibs-root .ibs-back:hover { color: var(--off-white); }
#ibs-root #ibs-result { display: none; }
#ibs-root #ibs-result .score-badge {
  display: inline-block;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.5px;
  color: var(--ember-bright);
  border: 1px solid var(--ember);
  border-radius: 20px;
  padding: 5px 14px;
  margin-bottom: 16px;
}
#ibs-root #ibs-result h2 {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 25px;
  margin: 0 0 14px;
  line-height: 1.3;
  color: var(--off-white);
}
#ibs-root #ibs-result p.ibs-narrative {
  color: var(--muted);
  font-size: 14.5px;
  line-height: 1.65;
  margin: 0 0 26px;
  max-width: 500px;
}
#ibs-root .ibs-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}
#ibs-root #ibs-cta {
  background: var(--ember);
  color: var(--off-white);
  border: none;
  padding: 13px 26px;
  border-radius: 7px;
  font-size: 14.5px;
  font-weight: 700;
  cursor: pointer;
  letter-spacing: 0.2px;
  font-family: inherit;
}
#ibs-root #ibs-cta:hover { background: var(--ember-bright); }
#ibs-root .ibs-download {
  background: transparent;
  color: var(--off-white);
  border: 1px solid var(--line);
  padding: 13px 22px;
  border-radius: 7px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  letter-spacing: 0.2px;
  font-family: inherit;
  transition: border-color 0.15s ease, background 0.15s ease;
}
#ibs-root .ibs-download:hover { border-color: var(--ember); background: #201d15; }
#ibs-root .ibs-secondary-link {
  display: block;
  margin-top: 14px;
  font-size: 12.5px;
  color: var(--muted);
}
#ibs-root .ibs-secondary-link a { color: var(--muted); text-decoration: underline; }
#ibs-root .ibs-secondary-link a:hover { color: var(--off-white); }

#ibs-root .ibs-email {
  margin-top: 22px;
  padding-top: 20px;
  border-top: 1px solid var(--line);
  max-width: 500px;
}
#ibs-root .ibs-email-prompt {
  display: block;
  font-size: 13.5px;
  color: var(--muted);
  margin-bottom: 10px;
}
#ibs-root .ibs-email-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
#ibs-root .ibs-email-input {
  flex: 1 1 220px;
  background: var(--obsidian-2);
  border: 1px solid var(--line);
  color: var(--off-white);
  padding: 12px 14px;
  border-radius: 7px;
  font-size: 14px;
  font-family: inherit;
}
#ibs-root .ibs-email-input::placeholder { color: #6f685c; }
#ibs-root .ibs-email-input:focus { outline: none; border-color: var(--ember); }
#ibs-root .ibs-email-send {
  background: var(--ember);
  color: var(--off-white);
  border: none;
  padding: 12px 20px;
  border-radius: 7px;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  font-family: inherit;
}
#ibs-root .ibs-email-send:hover { background: var(--ember-bright); }
#ibs-root .ibs-email-send[disabled] { opacity: 0.6; cursor: default; }
#ibs-root .ibs-email-status {
  font-size: 12.5px;
  line-height: 1.5;
  margin-top: 10px;
  min-height: 1em;
}
#ibs-root .ibs-email-status.is-ok { color: #7dbb8a; }
#ibs-root .ibs-email-status.is-err { color: var(--ember-bright); }

/* ---- theme-bleed guard: beat senzing-new's forced <a>/gradient/underline ---- */
#ajax-content-wrap #ibs-root a,
#ajax-content-wrap #ibs-root .ibs-secondary-link a {
  color: var(--muted) !important;
  background: none !important;
  -webkit-text-fill-color: currentColor !important;
  text-decoration: underline !important;
}
#ajax-content-wrap #ibs-root a:hover { color: var(--off-white) !important; }
#ajax-content-wrap #ibs-root button { font-family: inherit; }
