.sp-wrap {--sp-ink:#254a40;--sp-soft:#50685b;--sp-line:#cfdacc;--sp-gold:#edd6a1;color:var(--sp-ink);line-height:1.45}
.sp-wrap > .btn {margin:0 0 10px}
.sp-banner {display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0 0 14px;padding:18px 25px;border:1px solid #406454;border-radius:13px;background:#294c40;color:#fff9e8}
.sp-banner h2 {margin:4px 0 6px;color:#fffaf1;font-size:clamp(21px,2.2vw,32px);line-height:1.17}
.sp-banner p {max-width:710px;font-size:13px;color:#f0f3e7;line-height:1.55}
.sp-kicker {font-size:10px;font-weight:800;letter-spacing:1.2px;line-height:1.4;text-transform:uppercase;color:#516857}
.sp-banner .sp-kicker {color:var(--sp-gold)}
.sp-box-art {width:91px;max-height:84px}
.sp-section,.sp-tally-card {background:#fff;border:1px solid var(--sp-line);border-radius:12px;padding:17px 20px;margin:12px 0}
.sp-section h3 {margin:3px 0;color:#264c40;font-size:19px}
.sp-copy,.sp-nominee p,.sp-actionbar p,.sp-details p,.sp-dialog p,.sp-tally-card p {color:var(--sp-soft);font-size:13px;line-height:1.55}
.sp-nominees {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}
.sp-nominee {display:flex;flex-direction:column;align-items:stretch;gap:9px;background:#f7f9f4;border:1px solid #d8e0d3;border-radius:9px;padding:13px}
.sp-nominee.sp-picked {border-color:#4f7864;box-shadow:inset 0 0 0 1px #4f7864}
.sp-id,.sp-line,.sp-actionbar {display:flex;gap:10px;align-items:center}
.sp-id h4 {font-size:16px;line-height:1.18;margin:3px 0}
.sp-id .sp-kicker {letter-spacing:.5px;font-size:9px}
.sp-choice,.sp-peer,.sp-reason,.sp-ballot-choice {background:#fff;border:1px solid var(--sp-line);border-radius:7px;line-height:1.4}
.sp-wrap button:hover:enabled {border-color:#48705b}
.sp-choice {margin-top:auto;padding:8px 10px;font-size:12px;font-weight:700}
.sp-choice[aria-pressed=true],.sp-peer[aria-pressed=true],.sp-ballot-choice[aria-pressed=true] {background:#e5efdf;color:#284d37;border-color:#678464}
.sp-line,.sp-actionbar {justify-content:space-between;flex-wrap:wrap}
.sp-stamp {border-radius:25px;border:1px solid #d5e0ce;padding:3px 8px;background:#f0f4e9;color:#455c48;text-transform:uppercase;font-size:10px;letter-spacing:.5px;font-weight:700}
.sp-peerlist {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}
.sp-peer,.sp-reason {padding:9px 12px;text-align:left}
.sp-peer strong,.sp-peer small,.sp-ballot-choice strong,.sp-ballot-choice small {display:block}
.sp-peer strong,.sp-ballot-choice strong {font-size:14px}
.sp-peer small,.sp-ballot-choice small {margin-top:3px;color:var(--sp-soft);font-size:11px}
.sp-dialog {margin-top:13px;padding:12px 15px;border-left:3px solid #b69961;background:#faf6eb;border-radius:0 7px 7px 0}
.sp-dialog blockquote {margin:4px 0 11px;font-size:15px;font-weight:650}
.sp-dialog p + p {margin-top:6px}
.sp-reasons {display:grid;gap:5px;margin-top:6px}
.sp-reason {color:#354c40;font-size:12px}
.sp-reason b {display:inline-block;margin-right:5px}
.sp-actionbar {padding:13px 15px;border:1px solid var(--sp-line);border-radius:9px;background:#edf2e8;margin-top:12px}
.sp-actionbar strong {font-size:14px}
.sp-actionbar p {margin-top:2px;font-size:12px}
.sp-wrap .btn {min-height:39px}
.sp-details {margin-top:13px;border-top:1px solid var(--sp-line);padding:10px 0;font-size:12px}
.sp-details summary {cursor:pointer;color:#455e4e;font-weight:700;padding:4px 0}
.sp-details summary:focus-visible {outline:3px solid #dd9c47;outline-offset:2px}
.sp-details p,.sp-details a {display:block;max-width:860px;margin:7px 0}
.sp-details a {color:#26635a;text-decoration:underline}
.sp-paper {max-width:750px;margin:12px auto;background:#fffefa;border-top:4px solid #b29d71}
.sp-ballot-choices {display:grid;gap:8px;margin:16px 0}
.sp-ballot-choice {display:flex;align-items:center;gap:12px;text-align:left;padding:10px 14px}
.sp-radio {display:grid;place-items:center;border-radius:50%;border:1.5px solid #799581;width:20px;height:20px;font-size:13px;line-height:1;color:#355c48}
.sp-history {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:10px}
.sp-tally-card {margin:6px 0;padding:14px}
.sp-tally-rows {margin:10px 0}
.sp-count {display:grid;grid-template-columns:minmax(90px,1fr) 1.5fr 20px;gap:8px;align-items:center;font-size:12px;margin:6px 0}
.sp-track {background:#eef1e9;height:7px;border-radius:8px;overflow:hidden}
.sp-track i {display:block;background:#759883;height:100%;border-radius:8px}
.sp-count b {text-align:right}
@media(max-width:700px) {
  .sp-banner,.sp-section {padding:13px}
  .sp-nominees {grid-template-columns:1fr}
  .sp-nominee {display:grid;grid-template-columns:minmax(100px,1fr) auto;gap:6px;padding:10px}
  .sp-nominee p {grid-column:1/-1;grid-row:2}
  .sp-id .sp-portrait {width:40px;height:40px}
  .sp-id h4 {font-size:14px}
  .sp-choice {align-self:center;margin:0}
  .sp-box-art {width:57px}
  .sp-peerlist {grid-template-columns:1fr}
  .sp-peer {display:flex;align-items:center;justify-content:space-between;gap:5px}
  .sp-peer small {margin:0}
}
@media(max-width:380px) {
  .sp-box-art {display:none}
  .sp-choice {font-size:11px;padding:6px}
}
