:root {
  --ink: #162038;
  --muted: #667085;
  --accent: #3157d5;
  --accent-dark: #233f9e;
  --accent-soft: #edf1ff;
  --warm: #f7f8fc;
  --green: #3157d5;
  --green-light: #edf1ff;
  --saffron: #1a947d;
  --saffron-light: #e5f6f2;
}
body { background: #f5f7fc; }
.ambient-one { background: rgba(49, 87, 213, .1); }
.ambient-two { background: rgba(26, 161, 132, .08); }
.brand-mark, .primary-button { background: var(--accent); }
.primary-button:hover { background: var(--accent-dark); }
.year-pill { background: var(--accent-soft); color: var(--accent-dark); }
.question-kicker, .eyebrow { color: var(--accent); }
.option-button:hover, .option-button.selected { border-color: var(--accent); }
.option-button.selected .option-letter { background: var(--accent); }
.progress-track span { background: var(--accent); }
.privacy-dot { background: #21a179; }
.topbar { gap: 20px; }
.exam-switch { color: var(--accent-dark); font-size: .78rem; font-weight: 800; text-decoration: none; border: 1px solid #d9dfef; border-radius: 999px; padding: 8px 13px; background: #fff; }
.exam-switch:hover { border-color: var(--accent); }
.exam-pattern { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; margin: 18px 0 22px; }
.exam-pattern span { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; padding: 9px 10px; border: 1px solid #e1e5ef; border-radius: 10px; background: #fff; color: var(--muted); font-size: .72rem; }
.exam-pattern strong { color: var(--ink); font-size: .9rem; }
.field-label + .select-wrap { margin-bottom: 13px; }
.session-stats.four { grid-template-columns: repeat(4, 1fr); }
.session-stats.four div { padding-inline: 4px; }
.status-pill.archived { color: #705600; background: #fff6d6; }
.solution-copy { margin-top: 8px !important; color: #39445c !important; line-height: 1.55; }
.provenance-note a { color: var(--accent-dark); }
@media (max-width: 760px) {
  .exam-switch { display: none; }
  .lifetime-stats > div:nth-last-child(-n+2) { display: none; }
  .session-stats.four { grid-template-columns: repeat(2, 1fr); row-gap: 10px; }
}
