/* Math Person campaign: only what compass.css does not already cover. */
.mp-join label,.mp-witness label,.mp-me label{display:block;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--sub);margin:10px 0 4px}
.mp-join input,.mp-join select,.mp-witness input,.mp-witness select,.mp-me input,.mp-me select{width:100%;max-width:420px;padding:10px 12px;border:1.5px solid var(--line);border-radius:10px;font:inherit;background:#fff}
.mp-row{display:flex;flex-wrap:wrap;gap:12px}.mp-row>div{flex:1 1 180px}
.mp-btn{display:inline-block;background:var(--mag);color:#fff;font:inherit;font-weight:700;padding:11px 22px;border:0;border-radius:100px;cursor:pointer;margin:12px 8px 0 0}
.mp-btn.alt{background:#0a0700}.mp-btn.ghost{background:#fff;color:var(--mag);border:2px solid var(--mag)}.mp-btn[disabled]{opacity:.5;cursor:default}
.mp-prompt{font-size:1.15rem;font-weight:700;margin:6px 0 12px}
.mp-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.mp-choices button{background:#fff;border:2px solid var(--mag);border-radius:12px;padding:14px 10px;font:inherit;font-size:1.05rem;font-weight:700;cursor:pointer}
.mp-choices button:hover{background:var(--mag);color:#fff}
.mp-msg{margin:10px 0 0;font-weight:700}.mp-msg.bad{color:#b00020}.mp-msg.good{color:var(--teal)}
.mp-link{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:8px 0}.mp-link input{flex:1 1 260px;max-width:none;font-size:.86rem}
.mp-badges{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}
.mp-badges span{background:#fff;border:1.5px solid var(--mag);color:var(--mag);border-radius:100px;padding:3px 11px;font-size:.78rem;font-weight:700}
.mp-badges span.new{background:var(--mag);color:#fff}
.mp-bar{height:8px;background:rgba(0,0,0,.08);border-radius:100px;overflow:hidden;margin:3px 0 10px}.mp-bar i{display:block;height:100%;background:var(--mag)}
.mp-steps{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0 12px}.mp-steps span{padding:4px 12px;border-radius:100px;font-size:.78rem;font-weight:700;background:rgba(0,0,0,.07);color:var(--sub)}
.mp-steps span.on{background:var(--teal);color:#fff}
.mp-scale{display:flex;gap:6px;flex-wrap:wrap;margin:4px 0 12px}.mp-scale button{flex:1 1 110px;background:#fff;border:1.5px solid var(--line);border-radius:10px;padding:8px;font:inherit;font-size:.82rem;cursor:pointer}
.mp-scale button.on{border-color:var(--mag);background:var(--mag);color:#fff}
code{background:rgba(0,0,0,.06);padding:2px 6px;border-radius:6px;font-size:.9em}
