/* Chagua 5.17.1 – race pages: the race list, its position tiles and cards, and each race's people. */
:root{--chr-g:#075c3b;--chr-g2:#0a8753;--chr-ink:#17352a;--chr-mute:#5f7068;--chr-line:#e1ebe6}
.cns-poll-card-grid{--rc:#087443;--rcl:#e6f5ed}
.chr-r-president{--rc:#a87a12;--rcl:#fbf3dc}
.chr-r-governor{--rc:#087443;--rcl:#e6f5ed}
.chr-r-senator{--rc:#0d6f78;--rcl:#e2f3f4}
.chr-r-woman_rep{--rc:#8a3a78;--rcl:#f6e8f3}
.chr-r-mp{--rc:#2b5a9e;--rcl:#e6eef9}
.chr-r-mca{--rc:#9a4a24;--rcl:#f8ebe3}

/* ---- Position tiles ---- */
html body:not(#chr) .chr-pos{margin:6px 0 18px}
html body:not(#chr) .chr-pos-h{margin:0 0 2px!important;font-size:22px!important;font-weight:850!important;color:var(--chr-ink)!important;letter-spacing:-.01em}
html body:not(#chr) .chr-pos-p{margin:0 0 12px!important;color:var(--chr-mute)!important;font-size:14px!important}
html body:not(#chr) .chr-pos-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
html body:not(#chr) .chr-pos-top{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;flex-wrap:wrap}
html body:not(#chr) a.chr-pos-all{display:inline-flex;align-items:center;gap:6px;margin:0 0 12px;padding:7px 13px;border-radius:999px;background:#eef3f0;color:var(--chr-ink)!important;font-size:13px;font-weight:800;text-decoration:none!important}
html body:not(#chr) a.chr-pos-all.is-active{background:var(--chr-g);color:#fff!important}
html body:not(#chr) a.chr-tile{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-height:118px;padding:14px 13px 13px;border-radius:18px;background:#fff;border:1.5px solid var(--chr-line);box-shadow:0 6px 18px rgba(20,50,40,.06);text-decoration:none!important;color:var(--chr-ink)!important;overflow:hidden;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
html body:not(#chr) a.chr-tile:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:var(--rc)}
html body:not(#chr) a.chr-tile:hover{transform:translateY(-2px);border-color:var(--rc);box-shadow:0 12px 26px rgba(20,50,40,.12)}
html body:not(#chr) a.chr-tile.is-active{background:var(--rc);border-color:var(--rc);color:#fff!important;box-shadow:0 12px 26px rgba(20,50,40,.18)}
.chr-tile-ic{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:13px;background:var(--rcl);color:var(--rc);margin-bottom:6px}
.chr-tile.is-active .chr-tile-ic{background:rgba(255,255,255,.18);color:#fff}
.chr-tile-t{font-size:14.5px;font-weight:850;line-height:1.2}
.chr-tile-s{font-size:12px;font-weight:700;color:var(--chr-mute)}
.chr-tile.is-active .chr-tile-s{color:rgba(255,255,255,.85)}
html body:not(#chr) .chr-filters{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;margin:0 0 20px}
html body:not(#chr) .chr-filters .cns-polls-filter-tabs,html body:not(#chr) .chr-filters .cns-polls-county-filter{margin:0!important}
@media(max-width:1000px){html body:not(#chr) .chr-pos-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){html body:not(#chr) .chr-pos-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}html body:not(#chr) a.chr-tile{min-height:0;flex-direction:row;align-items:center;flex-wrap:wrap;padding:12px;column-gap:10px}.chr-tile-ic{margin:0;width:36px;height:36px}.chr-tile-t{flex:1;min-width:0;font-size:13.5px}.chr-tile-s{flex-basis:100%;padding-left:46px;margin-top:-4px}html body:not(#chr) .chr-pos-h{font-size:19px!important}}

/* ---- Race cards on the list ---- */
html body:not(#chr) .cns-polls-grid{gap:16px!important}
html body:not(#chr) .cns-poll-card-grid{position:relative;border-radius:18px!important;border:1.5px solid var(--chr-line)!important;box-shadow:0 6px 20px rgba(20,50,40,.06)!important}
html body:not(#chr) .cns-poll-card-grid:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:var(--rc);z-index:4}
html body:not(#chr) .cns-poll-card-grid:hover{border-color:var(--rc)!important}
/* The empty picture area becomes a slim header with the position and whether it is open. */
html body:not(#chr) .cns-poll-card-grid__media:not([style*="background-image"]){height:auto!important;min-height:0!important;background:var(--rcl)!important;padding:16px 14px 12px!important}
html body:not(#chr) .cns-poll-card-grid__media:not([style*="background-image"]) .cns-poll-card-grid__media-shade{display:none}
html body:not(#chr) .cns-poll-card-grid__media:not([style*="background-image"]) .cns-poll-card-grid__media-top{position:static!important}
html body:not(#chr) .cns-poll-card-grid__type-pill{display:inline-flex!important;align-items:center;gap:6px;background:var(--rc)!important;color:#fff!important;font-size:12px!important;padding:6px 11px 6px 8px!important;box-shadow:none!important}
.chr-pill-ic{display:inline-flex;font-style:normal}.chr-pill-ic svg{width:15px;height:15px}
html body:not(#chr) .cns-poll-card-grid__status--open{background:#fff!important;color:var(--chr-g)!important;border:1px solid #cfe6d9!important}
html body:not(#chr) .cns-poll-card-grid__body{display:flex!important;flex-direction:column;padding:14px 16px 16px!important;gap:6px}
html body:not(#chr) .cns-poll-card-grid__eyebrow{margin:0!important;min-height:0!important}
html body:not(#chr) .cns-poll-card-grid__race-tag{background:transparent!important;padding:0!important;color:var(--rc)!important;font-size:13px!important;font-weight:900!important;letter-spacing:.06em!important;text-transform:uppercase}
html body:not(#chr) .cns-poll-card-grid__title{margin:0 0 6px!important;font-size:17px!important;line-height:1.3!important}
html body:not(#chr) .cns-poll-card-grid__title a{color:var(--chr-ink)!important}
html body:not(#chr) .cns-poll-card-grid__vote-button{margin-top:auto!important;min-height:44px!important;border-radius:12px!important;background:linear-gradient(135deg,var(--chr-g),var(--chr-g2))!important;font-size:14px!important}

/* The people in each race */
html body:not(#chr) .chr-faces{display:flex;align-items:center;gap:6px 10px;flex-wrap:wrap;margin:0 0 10px;min-height:44px}
.chr-faces-row{display:inline-flex;align-items:center;padding-left:6px}
.chr-face{--pc:#cfe0d6;position:relative;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;margin-left:-8px;border-radius:50%;overflow:hidden;background:#e4f0e9;border:2.5px solid #fff;box-shadow:0 0 0 2px var(--pc),0 3px 8px rgba(0,0,0,.12);color:#075c3b;font-size:13px;font-weight:900}
.chr-face img{width:100%;height:100%;object-fit:cover;display:block}
.chr-face b{font-weight:900}
.chr-face--more{--pc:#e1ebe6;background:#f1f6f3;color:#456158;font-size:12px}
.chr-faces-t{flex:1 1 100%;min-width:0;font-size:12.5px;font-weight:700;color:#5f7068;line-height:1.35}
.chr-faces--none .chr-faces-t{display:inline-block;flex:0 0 auto;padding:6px 11px;border-radius:999px;background:#fff6e5;color:#8a5a00;font-weight:800}
html.cht-night body:not(#chr) .chr-face{border-color:#131c17}
html.cht-night body:not(#chr) .chr-faces-t{color:#9aa8a0}

/* ---- A race page ---- */
html body:not(#chr) .cns-poll-content-card .cns-poll-section-heading{display:grid!important;grid-template-columns:1fr auto;align-items:end;gap:10px 16px}
html body:not(#chr) .cns-poll-content-card .cns-poll-section-heading>p{grid-column:1/-1;margin:0!important;max-width:none!important;width:auto!important;padding:10px 14px;border-radius:12px;background:#f4f8f6;border:1px solid var(--chr-line);color:var(--chr-mute);font-size:13px!important;line-height:1.5;text-align:left!important}
html body:not(#chr) .cns-poll-content-card .cns-poll-section-heading>p+p{background:transparent;border:0;padding:0 2px}
html body:not(#chr) .cns-poll-section-heading h2{font-size:26px!important;line-height:1.15!important}

html body:not(#chr) .cns-poll-contestants-results{gap:14px!important;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))!important}
html body:not(#chr) .cns-poll-contestant-result,html body:not(#chr) .cns-poll-option-row .cns-poll-option{position:relative;display:flex!important;flex-direction:column;align-items:center;min-height:0!important;padding:22px 14px 14px!important;border-radius:18px!important;border:1.5px solid var(--chr-line)!important;background:#fff!important;box-shadow:0 6px 18px rgba(20,50,40,.06)!important;overflow:hidden;text-align:center}
html body:not(#chr) .cns-poll-contestants-results{--pc:#087443}
html body:not(#chr) .cns-poll-contestant-result:before,html body:not(#chr) .cns-poll-option-row .cns-poll-option:before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:var(--pc)}
html body:not(#chr) .cns-poll-contestant-result:hover,html body:not(#chr) .cns-poll-option-row .cns-poll-option:hover{border-color:var(--pc)!important;transform:translateY(-2px);box-shadow:0 12px 26px rgba(20,50,40,.1)!important}
html body:not(#chr) .cns-poll-contestant-result__photo,html body:not(#chr) .cns-poll-option__media{width:96px!important;height:96px!important;flex:0 0 96px!important;margin:0 auto 10px!important;border:4px solid #fff!important;box-shadow:0 0 0 3px var(--pc),0 8px 20px rgba(0,0,0,.12)!important}
html body:not(#chr) .cns-poll-contestant-result__name{min-height:0!important;font-size:16.5px!important;line-height:1.25!important;margin:2px 0 0}
.chr-party{display:inline-block;margin:7px auto 2px;padding:4px 11px;border-radius:999px;background:var(--pc,#087443);color:#fff;font-size:11.5px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html body:not(#chr) .cns-poll-contestant-result .cns-poll-option__profile,html body:not(#chr) .cns-poll-option__details .cns-poll-option__profile{margin:6px 0 0!important;font-size:12.5px!important;color:var(--chr-g)!important}
html body:not(#chr) .cns-poll-contestant-result--preview .cns-poll-option__vote-label--link{display:flex!important;align-items:center;justify-content:center;width:100%;min-height:42px;margin:auto 0 0!important;padding:9px 12px!important;border-radius:12px!important;background:linear-gradient(135deg,var(--chr-g),var(--chr-g2))!important;color:#fff!important;font-size:12.5px!important;letter-spacing:.04em}
html body:not(#chr) .cns-poll-contestant-result--preview .cns-poll-option__profile{margin-bottom:12px!important}
html body:not(#chr) .cns-poll-contestant-result--preview .cns-poll-option__vote-label--link:hover{filter:brightness(1.08)}
html body:not(#chr) .cns-poll-contestant-result__stats{margin-top:auto!important}
html body:not(#chr) .cns-poll-contestant-result__stats strong{color:var(--chr-ink)!important}
html body:not(#chr) .cns-poll-option-row .cns-poll-option:has(input:checked){border-color:var(--chr-g)!important;background:#f1faf5!important;box-shadow:0 0 0 3px rgba(8,116,67,.18),0 12px 26px rgba(20,50,40,.1)!important}
html body:not(#chr) .cns-poll-option-row .cns-poll-option__vote-label{display:none}
html body:not(#chr) .cns-poll-option__details{gap:2px!important}
@media(max-width:620px){
	html body:not(#chr) .cns-poll-contestants-results{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
	html body:not(#chr) .cns-poll-contestant-result,html body:not(#chr) .cns-poll-option-row .cns-poll-option{padding:18px 10px 10px!important}
	html body:not(#chr) .cns-poll-contestant-result__photo,html body:not(#chr) .cns-poll-option__media{width:76px!important;height:76px!important;flex-basis:76px!important}
	html body:not(#chr) .cns-poll-contestant-result__name{font-size:14.5px!important}
	html body:not(#chr) .cns-poll-contestant-result--preview .cns-poll-option__vote-label--link{font-size:11px!important;min-height:38px}
	html body:not(#chr) .cns-poll-content-card .cns-poll-section-heading{grid-template-columns:1fr}
}

/* Night mode */
html.cht-night body:not(#chr) a.chr-tile,html.cht-night body:not(#chr) .cns-poll-card-grid,html.cht-night body:not(#chr) .cns-poll-contestant-result,html.cht-night body:not(#chr) .cns-poll-option-row .cns-poll-option{background:#131c17!important;border-color:#26332c!important;color:#e6ece8!important}
html.cht-night body:not(#chr) .chr-pos-h,html.cht-night body:not(#chr) .cns-poll-card-grid__title a,html.cht-night body:not(#chr) .cns-poll-contestant-result__name,html.cht-night body:not(#chr) .cns-poll-option__details strong{color:#e6ece8!important}
html.cht-night body:not(#chr) .cns-poll-card-grid__media:not([style*="background-image"]){background:#18241e!important}
html.cht-night body:not(#chr) .cns-poll-content-card .cns-poll-section-heading>p{background:#18241e;border-color:#26332c}
@media(prefers-reduced-motion:reduce){html body:not(#chr) a.chr-tile,html body:not(#chr) .cns-poll-contestant-result,html body:not(#chr) .cns-poll-option-row .cns-poll-option{transition:none!important;transform:none!important}}

/* 6.0: stage chip on each person, and the "same questions" box on each race */
.chr-stage{display:inline-block;margin:4px auto 0;padding:3px 10px;border-radius:999px;background:#eef2f0;color:#374151;font-size:11px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.chr-stage-aspirant{background:#fdf1d6;color:#7a5200}
.chr-stage-party-nominated{background:#e6eef9;color:#1f4a86}
.chr-stage-iebc-cleared{background:#016b3f;color:#fff}
html body:not(#chr) a.chr-qa{display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;margin:0 0 16px;padding:13px 16px;border-radius:14px;background:linear-gradient(135deg,#fbf3dc,#fff8e8);border:1px solid #f0dca8;color:#4a3500!important;text-decoration:none!important}
.chr-qa-k{font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#a87a12}
.chr-qa-t{font-weight:800;font-size:15px}
.chr-qa-go{margin-left:auto;font-weight:900;color:#075c3b}
html body:not(#chr) a.chr-qa:hover{border-color:#a87a12}
html body:not(#chr) a.chr-pos-run{background:#fbf3dc;color:#7a5200!important}
html body:not(#chr) .chr-pos-top>a{margin-left:6px}
