.sp { flex: 1; min-height: 0; display: flex; flex-direction: column; gap: 3.5vh; justify-content: center; }
.sp-pair { display: grid; gap: 1.6vh; }
.sp-sent { font-size: 2.3rem; font-weight: 600; line-height: 1.2; }
.sp-diff { font-weight: 800; text-decoration: underline; text-decoration-thickness: 4px; text-underline-offset: 6px; }
.sp-diff.ours { color: var(--s1); }
.sp-q { font-size: 1.3rem; font-weight: 700; color: var(--ink-2); }
.sp-bars { display: grid; gap: 1.1rem; max-width: 70rem; }
.sp-row { display: grid; grid-template-columns: 13rem 1fr 7rem; gap: 1.2rem; align-items: center; }
.sp-model { font-size: 1.15rem; font-weight: 700; text-align: right; }
.sp-track { height: 2.2rem; background: var(--grid); border-radius: 6px; position: relative; overflow: hidden; }
.sp-fill { height: 100%; background: var(--s1); border-radius: 0 6px 6px 0; transition: width 1.4s cubic-bezier(.3,.7,.2,1); }
.sp-val { font-size: 1.7rem; font-weight: 800; font-variant-numeric: tabular-nums; }
.sp-scale { position: relative; height: 1.4rem; }
.sp-scale span { position: absolute; transform: translateX(-50%); font-size: .95rem; font-weight: 700; color: var(--ink-2); white-space: nowrap; }
.sp-scale span:first-child { transform: none; }
.sp-row.head { margin-bottom: -.6rem; }
.sp-intro { display: flex; flex-direction: column; gap: 5vh; }
