/* What Houston lawyers think: the bar association's poll card on the person and position pages (js/barpoll.js):
   a bar a candidate, in their party's colour; half the page wide (all of it on phones). */
.pb > .pb-barpoll, .pos-grid > .pos-barpoll { grid-column: span 2; }
@media (max-width: 620px) { .pb > .pb-barpoll { grid-column: auto; } }
.bp-head h3 { margin: 0; font-size: 18px; font-weight: 800; color: var(--ink, #150e5e); }
.bp-note { margin: 4px 0 0; color: #4e4a7a; font-size: 13.5px; line-height: 1.4; }
.bp-rows { display: grid; gap: 12px; margin: 14px 0 0; padding: 0; list-style: none; }
.bp-row { --p: var(--party-other); }
.bp-row[data-party="democrat"] { --p: var(--party-democrat); }
.bp-row[data-party="republican"] { --p: var(--party-republican); }
.bp-row[data-party="libertarian"] { --p: #d4a017; }
.bp-row[data-party="green"] { --p: #17a34a; }
.bp-label { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0 6px; color: var(--ink, #150e5e); font-size: 15px; }
.bp-party { color: #6b6890; font-size: 13px; }
.bp-nums { margin-left: auto; color: #4e4a7a; font-size: 13.5px; }
.bp-nums b { color: var(--ink, #150e5e); font-size: 16px; }
.bp-bar { height: 12px; margin-top: 5px; overflow: hidden; border-radius: 6px; background: #efedfd; }
.bp-bar i { display: block; height: 100%; border-radius: 6px; background: var(--p); opacity: .45; }
.bp-row.is-top .bp-bar i { opacity: 1; }
/* (on a candidate's page, their own name underlined in their colour) */
.bp-row.is-me .bp-name { text-decoration: underline 3px var(--p); text-underline-offset: 3px; }
.bp-foot { margin: 14px 0 0; color: #6b6890; font-size: 12.5px; line-height: 1.45; }
.bp-foot a { color: inherit; font-weight: 700; }

/* How Houston lawyers rate them: the bar association's evaluation of a judge (js/barpoll.js): the overall rating
   as one bar, excellent (dark green) to needs improvement (orange), no opinion grey; each question folded. */
.pb > .pb-bareval, .pos-grid > .pos-bareval { grid-column: span 2; }
@media (max-width: 620px) { .pb > .pb-bareval { grid-column: auto; } }
.be-big { margin-top: 14px; }
.be-num { margin: 0 0 6px; color: #4e4a7a; font-size: 14.5px; }
.be-num b { margin-right: 4px; color: var(--ink, #150e5e); font-size: 28px; font-weight: 800; }
.be-bar { display: flex; gap: 2px; height: 14px; overflow: hidden; border-radius: 7px; background: #efedfd; }
.be-bar i { display: block; min-width: 3px; }
.be-bar i[data-r="0"], .be-key i[data-r="0"] { background: #0a7d4f; }
.be-bar i[data-r="1"], .be-key i[data-r="1"] { background: #6cc08b; }
.be-bar i[data-r="2"], .be-key i[data-r="2"] { background: #d8cf8f; }
.be-bar i[data-r="3"], .be-key i[data-r="3"] { background: #e07a1f; }
.be-bar i[data-r="4"], .be-key i[data-r="4"] { background: #d8d5e8; }
.be-sub { margin: 8px 0 0; color: #4e4a7a; font-size: 13.5px; line-height: 1.45; }
.be-few { color: #9a4a00; }
.be-key { display: flex; flex-wrap: wrap; gap: 4px 12px; margin: 10px 0 0; padding: 0; list-style: none; color: #6b6890; font-size: 12.5px; }
.be-key li { display: inline-flex; align-items: center; gap: 5px; }
.be-key i { width: 10px; height: 10px; border-radius: 3px; }
.be-qs { margin-top: 14px; }
.be-qs summary { cursor: pointer; color: var(--ink, #150e5e); font-size: 14.5px; font-weight: 700; }
.be-list { display: grid; gap: 10px; margin: 10px 0 0; padding: 0; list-style: none; }
.be-q .be-bar { height: 9px; }
.be-qlabel { display: flex; justify-content: space-between; gap: 10px; margin-bottom: 4px; color: var(--ink, #150e5e); font-size: 13.5px; }
