
:root{
  --black:var(--ink);
  --mid:#e8e6e1;--muted:var(--grey);
  --fh:var(--font-heading);--fb:var(--font-body);
}
.compare-question-text .block-heading{
  font-family:var(--font-body) !important;
  font-size:var(--text-xl) !important;
  line-height:1.3;
  color:var(--color-text) !important;
  text-align:center !important;
}
.results-summary-meta{
  margin-top:var(--space-xs);
  display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.results-summary-meta .rsh-meta{white-space:nowrap;}
.results-summary-meta .rsh-meta--lower{text-transform:lowercase;}
.results-summary-meta .rsh-meta:not(:first-child)::before{
  content:'—';margin:0 9px;opacity:.45;
}
.results-summary-header .tpl-sublabel{line-height:0.92;}
.msr-page-header{text-align:center;margin:var(--space-xl) 0 28px;}
.participant-intro-card-wrap .msr-page-header,
.compare-top-card > .msr-page-header{margin:0;}
.participant-page{
  max-width:var(--participant-column);
  margin:0 auto;
  padding:var(--space-lg);
}
.participant-page--wide{max-width:var(--tpl-canvas-width);}
.participant-page--pair{max-width:var(--participant-pair-column);}
.counter-wrap{margin-top:var(--space-md);}
.p-textbox{
  display:flow-root;
  border:1px solid rgba(var(--ink-rgb),0.18);
  background:var(--color-white);
}
.p-textbox:focus-within{border-color:var(--color-text);}
.p-textbox__text{display:block;width:100%;box-sizing:border-box;border:none;border-radius:0;background:transparent;outline:none;resize:vertical;}
.p-textbox__count{font-family:var(--font-mono);font-size:var(--mono-utility-size);letter-spacing:0.1em;color:var(--color-text-tertiary);text-align:right;padding:var(--space-sm) var(--inset-box);border-top:1px solid rgba(var(--ink-rgb),0.10);}
.p-textbox__count.over{color:var(--red);}
.block-kicker{
  font-family:var(--fh);
  font-size:var(--type-field);
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:var(--red);
  line-height:1;
  margin:0
}
.cmp-footer-actions{
  --cmp-footer-btn:7.5rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:var(--space-md);
}
.cmp-footer-actions > .btn-secondary,
.cmp-footer-actions > form > .btn-secondary,
.cmp-footer-actions > .q-btn-back,
.cmp-footer-actions > .p-btn-primary{
  min-width:var(--cmp-footer-btn);
  text-align:center;
}
.cmp-footer-actions > .p-btn-primary{margin-left:auto;}
.cmp-tick{
  --cmp-tick-size:56px;
  position:absolute;
  width:var(--cmp-tick-size);height:var(--cmp-tick-size);
  border-radius:50%;
  font-size:0;line-height:0;
  background-image:
      var(--quiz-tick-svg),
      radial-gradient(circle closest-side, var(--quiz-correct) 98%, transparent 100%);
  background-repeat:no-repeat,no-repeat;
  background-size:
      calc(var(--cmp-tick-size) * 2 / 3) calc(var(--cmp-tick-size) * 2 / 3),
      var(--cmp-tick-size) var(--cmp-tick-size);
  background-position:center,center;
  opacity:0;
  pointer-events:none;
}
.participant-kicker{text-align:center;margin:0 0 var(--space-md);}
.results-summary-header .rsh-title{margin-top:var(--space-sm);}
.results-summary-header .participant-kicker + .rsh-title{margin-top:0;}
.results-summary-header .participant-kicker{margin-bottom:var(--space-xs);}
.block-kicker + .block-heading{
  margin-top:-8px !important;
}
.block-heading{
  font-family:var(--fh);
  font-size:var(--text-2xl);
  color:var(--color-text);
  font-weight:var(--weight-regular);
  line-height:0.92;
  letter-spacing:0.01em;
  text-align:center;
  margin:0
}
.block-heading-section{
  font-family:var(--fh);
  font-size:var(--type-panel-title);
  font-weight:var(--weight-regular);
  letter-spacing:0.01em;
  line-height:0.92;
  color:var(--color-text);
  text-align:left;
  margin:0
}
.btn-secondary{
  display:inline-block;
  background:var(--color-white);
  color:var(--black);
  border:1px solid var(--color-border);
  font-family:var(--font-body);
  font-size:var(--type-field);
  font-weight:var(--weight-medium);
  letter-spacing:0;
  text-transform:none;
  padding:var(--inset-box) 32px;
  cursor:pointer;
  text-decoration:none;
  transition:background 0.15s;
}
.btn-secondary:hover{background:var(--bg);}
.block-btn{
  display:inline-block;
  font-family:var(--font-body);
  font-size:var(--type-label);
  letter-spacing:0.12em;
  text-transform:uppercase;
  color:var(--color-white);
  background:var(--red);
  padding:var(--inset-box) 28px;
  border:none;
  border-radius:0;
  cursor:pointer;
  text-decoration:none;
  transition:opacity 0.2s
}
.block-btn:link,.block-btn:visited{color:var(--color-white);text-decoration:none}
.block-btn:hover{opacity:0.87}
.p-btn-primary{
  display:inline-block;
  background:var(--success);
  color:var(--color-white);
  border:none;
  padding:var(--inset-box) 32px;
  font-family:var(--font-body);
  font-size:var(--type-field);
  font-weight:var(--weight-semibold);
  letter-spacing:0.04em;
  text-transform:uppercase;
  text-decoration:none;
  cursor:pointer;
  transition:opacity 0.15s;
}
a.p-btn-primary,
a.p-btn-primary:hover,
a.p-btn-primary:visited,
a.p-btn-primary:focus{text-decoration:none;}
.p-btn-primary:hover{opacity:0.9}
.p-btn-primary:disabled{opacity:0.35;cursor:not-allowed}
.participant-fullscreen-dark{
  text-align:center;
  max-width:400px;
  padding:var(--space-xl);
}
.participant-fullscreen-dark__cta{
  color:var(--accent);
  font-family:var(--font-body);
  text-decoration:none;
}
.participant-welcome{
  display:flex;
  flex-direction:column;
  gap:var(--space-xl);
}
.participant-welcome .tpl-form-card{margin:0;}
.participant-welcome__cta{text-align:center;}
.participant-welcome .pf-wrap,
.participant-welcome .pf-formbox,
.participant-welcome .pf-formbox > form{display:contents;}
.pf-info-purpose{text-transform:uppercase;}
.pf-fieldgrid label.tpl-crit-tag{color:var(--ink);font-size:var(--participant-field-label);}
.tpl-form-card > .pf-fieldgrid{margin-top:var(--space-xl);}
.q-guidance{text-transform:uppercase;}
.field-label{
  display:block;
  font-family:var(--fb);
  font-size:0.75rem;
  text-transform:uppercase;
  letter-spacing:0.1em;
  color:var(--color-label);
  margin-bottom:var(--space-sm);
}
.field-invalid{
  border:2px solid var(--error-red) !important;
}
.field-row{
  border:1px solid var(--color-card-border);
  background:var(--color-field-row-bg);
  padding:var(--space-md);
  display:grid;
  gap:0.75rem;
}
.block-header{margin-bottom:var(--space-lg)}
.block-body-text{
  font-family:var(--font-body);
  font-size:var(--type-field);
  line-height:1.6;
  color:var(--color-text);
  margin:0
}
.si-intro-body{font-size:var(--text-lg);line-height:1.3;}
.q-tape{display:flex;flex-direction:column;align-items:center;gap:var(--inset-control);}
.q-tape-track{display:flex;gap:var(--inset-tag);width:100%;max-width:320px;}
.q-tape-notch{flex:1 1 0;height:6px;border-radius:1px;background:var(--grey-ghost);}
.q-tape-notch.is-done{background:var(--grey);}
.q-tape-notch.is-current{background:var(--ink);}
.q-tape-label{font-size:var(--text-sm);letter-spacing:0.12em;text-transform:uppercase;color:var(--grey);}
