.bl{gap:.9rem;display:grid}.bl-steps{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.bl-steps li{border:1px solid var(--line);background:var(--surface);color:var(--slate);border-radius:999px;align-items:center;gap:.4rem;padding:.3rem .7rem .3rem .3rem;font-size:.82rem;font-weight:600;display:inline-flex}.bl-steps li span{background:var(--accent-soft);width:22px;height:22px;color:var(--accent);border-radius:50%;place-items:center;font-size:.75rem;display:inline-grid}.bl-steps li.now{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.bl-steps li.now span{background:var(--accent);color:#fff}.bl-steps li.done span{background:color-mix(in srgb, var(--accent) 25%, var(--surface))}.bl-total{background:var(--accent-soft);border-radius:999px;height:14px;display:flex;overflow:hidden}.bl-seg{background:var(--pc);height:100%;transition:width .5s;display:block}.bl-seg+.bl-seg{border-left:2px solid var(--surface)}.bl-empty{background:var(--accent-soft);color:var(--accent);border-radius:12px;margin:0;padding:.55rem .8rem;font-size:.9rem;font-weight:600}.bl-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.7rem;display:grid}.bl-card{border:2px solid var(--line);background:linear-gradient(180deg, var(--pc-soft), var(--surface) 55%);text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:18px;flex-direction:column;align-items:center;gap:.2rem;padding:1rem .6rem .8rem;transition:border-color .15s,transform .15s,box-shadow .15s;display:flex;position:relative}.bl-card[aria-disabled=true]{cursor:default}.bl-card:hover{border-color:var(--pc)}.bl-card:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.bl-card.picked{border-color:var(--pc);box-shadow:0 0 0 3px color-mix(in srgb, var(--pc) 30%, transparent);transform:translateY(-2px)}.bl-card.mine:not(.picked){border-color:var(--pc)}.bl-face{border:4px solid var(--pc);object-fit:cover;object-position:top;background:var(--surface);border-radius:50%;display:block;width:120px!important;height:120px!important}.bl-name{font-family:var(--font-editorial);color:var(--ink);margin-top:.4rem;font-size:1.15rem;font-weight:700;line-height:1.15}.bl-meta{align-items:center;gap:.35rem;min-height:1.4rem;display:inline-flex}.bl-pct{font-family:var(--font-data);color:var(--pc);font-variant-numeric:tabular-nums;margin-top:.2rem;font-size:1.9rem;font-weight:800;line-height:1}.bl-votes{min-height:1em;color:var(--slate);font-size:.78rem}.bl-profile{color:var(--slate);margin-top:.2rem;font-size:.78rem;font-weight:600;text-decoration:underline}.bl-badge{background:var(--accent);color:#fff;border-radius:999px;padding:.15rem .5rem;font-size:.7rem;font-weight:700;position:absolute;top:.55rem;left:.55rem}.bl-tick{background:var(--pc);color:#fff;border-radius:50%;place-items:center;width:26px;height:26px;font-weight:800;display:grid;position:absolute;top:.5rem;right:.55rem}.bl-action{min-height:1px}.bl-action.has-go{bottom:calc(var(--bottom-nav-h,64px) + 10px + env(safe-area-inset-bottom,0px));z-index:5;position:sticky}.bl-go{text-align:center;justify-content:center;width:100%;min-height:52px;padding:.7rem 1rem;font-size:1.05rem;font-weight:700;display:flex;box-shadow:0 6px 18px #00000038}.bl-hint{background:var(--surface);border:1px solid var(--line);color:var(--slate);border-radius:12px;margin:0;padding:.6rem .85rem;font-size:.92rem}.bl-hint.ok{border-color:var(--accent);background:var(--accent-soft);color:var(--ink)}@media (min-width:900px){.bl-action.has-go{position:static}.bl-go{width:auto;min-width:320px}.bl-face{width:140px!important;height:140px!important}}@media (max-width:400px){.bl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bl-face{width:96px!important;height:96px!important}.bl-pct{font-size:1.6rem}}@media (prefers-reduced-motion:reduce){.bl-card,.bl-seg{transition:none}}
.rp-card .rp-tag{color:#4a3200;background:#f5c04a;border-radius:99px;margin-bottom:8px;padding:2px 10px;font-size:11px;font-weight:700;display:inline-block}.rp-card .opt-face{object-fit:cover;border-radius:50%;width:44px;height:44px}.rp-card .opt-head .opt-label{font-weight:800}.rp-card .opt-head .val{letter-spacing:-.02em;font-size:1.35rem;font-weight:900}.rp-card .opt .bar{background:#e6e3ee;border-radius:6px;height:22px}.rp-card .opt .bar>span{background:#4b5563;border-radius:6px}.rp-card .opt.party-d .bar>span{background:#1f4fd8}.rp-card .opt.party-r .bar>span{background:#c8202f}.rp-card .opt.party-i .bar>span{background:#2f9e6a}
