/* B&C People's Vote 2026 - deliberately scoped to #bcv-vote-app */
#bcv-vote-app{--bc-border:#e4e4e4;--bc-ink:#202020;--bc-soft:#f6f6f6;color:var(--bc-ink);font-family:inherit}
#bcv-vote-app *,#bcv-vote-app *:before,#bcv-vote-app *:after{box-sizing:border-box}
#bcv-vote-app button,#bcv-vote-app input,#bcv-vote-app select{font:inherit}
#bcv-vote-app button{cursor:pointer}
#bcv-vote-app button:focus-visible,#bcv-watch-dialog button:focus-visible{outline:3px solid var(--color-red,#e3000b);outline-offset:3px}
#bcv-vote-app .bcv-intro{margin:20px 0 25px}
#bcv-vote-app .bcv-intro h2{margin:0 0 8px;color:#151515}
#bcv-vote-app .bcv-intro p{margin:0}
#bcv-vote-app .bcv-status{padding:12px 14px;margin:12px 0;border-left:4px solid var(--color-red);background:#fff4f4;font-size:.95rem}
#bcv-vote-app .bcv-info{padding:12px 14px;margin:14px 0;background:#f2f7fc;border-left:4px solid #406c9d}
#bcv-vote-app .bcv-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 16px;padding-bottom:20px}
#bcv-vote-app .bcv-card{border:1px solid var(--bc-border);box-shadow:0 2px 6px #0000000a;border-radius:3px;overflow:hidden;display:flex;flex-direction:column;background:#fff;min-width:0}
#bcv-vote-app .bcv-card.bcv-selected{outline:3px solid var(--color-red);outline-offset:-3px}
#bcv-vote-app .bcv-thumb{display:block;border:0;padding:0;width:100%;aspect-ratio:16/9;position:relative;background:#111;overflow:hidden}
#bcv-vote-app .bcv-thumb img{display:block;width:100%;height:100%;object-fit:cover;transition:filter .15s}
#bcv-vote-app .bcv-thumb:hover img{filter:brightness(.75)}
#bcv-vote-app .bcv-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:55px;height:39px;display:grid;place-items:center;color:#fff;background:var(--color-red);border-radius:10px;font-size:23px;line-height:1}
#bcv-vote-app .bcv-card-body{display:flex;flex:1;flex-direction:column;padding:11px;gap:13px}
#bcv-vote-app .bcv-title{margin:0;font-size:.95rem;line-height:1.3;font-weight:700;overflow-wrap:break-word}
#bcv-vote-app .bcv-select{border-radius:3px;color:var(--color-light-grey)!important;padding:9px 10px;font-weight:700;margin-top:auto;width:100%;transition:background .12s}
#bcv-vote-app .bcv-select:hover,#bcv-vote-app .bcv-selected .bcv-select{color:#fff!important;}
#bcv-vote-app .bcv-action{border:0;background:var(--color-red);color:#fff;border-radius:3px;padding:12px 19px;font-weight:700}
#bcv-vote-app .bcv-action:hover:not(:disabled){background:#b30009}
#bcv-vote-app .bcv-action:disabled{background:#bbb;cursor:not-allowed}
#bcv-vote-app .bcv-secondary{padding:10px 14px;border-radius:3px;color:#efefef!important;font-weight:bold;}
#bcv-vote-app .bcv-choice-bar{position:sticky;bottom:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:15px;box-shadow:0 -5px 25px #0002;background:#fff;border:1px solid #ddd;border-top:4px solid var(--color-red);padding:14px;margin:8px 0 20px}
#bcv-vote-app .bcv-choice-bar strong{display:block;font-size:.95rem}
#bcv-vote-app .bcv-choice-bar small{color:#555}
#bcv-vote-app .bcv-ballot-header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 15px}
#bcv-vote-app .bcv-ballot-header h2{margin:0}
#bcv-vote-app .bcv-progress{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin:20px 0 24px;height:7px}
#bcv-vote-app .bcv-segment{background:#ddd;border-radius:2px}
#bcv-vote-app .bcv-segment.is-done{background:var(--color-red)}
#bcv-vote-app .bcv-rate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
#bcv-vote-app .bcv-rate-card{border:1px solid var(--bc-border);background:#fff;box-shadow:0 2px 8px #00000012;padding:13px;min-width:0}
#bcv-vote-app .bcv-rate-card h3{font-size:1rem;line-height:1.3;margin:8px 0 12px}
#bcv-vote-app .bcv-role{display:inline-block;font-size:.73rem;text-transform:uppercase;letter-spacing:.02em;font-weight:700;color:#555}
#bcv-vote-app .bcv-role.chosen{color:var(--color-red)}
#bcv-vote-app .bcv-stars{display:flex;gap:4px;align-items:center;flex-wrap:wrap}
#bcv-vote-app .bcv-star{padding:0;background:transparent!important;font-size:27px;line-height:1.1;color:var(--color-dark-grey);min-width:28px;transition:color .12s ease}
#bcv-vote-app .bcv-star.is-on{color:var(--color-gold,#d79c16)}
/* Hover/focus preview: only the gold highlight changes; the saved rating is not modified. */
#bcv-vote-app .bcv-stars.bcv-previewing .bcv-star{color:var(--color-dark-grey,#a4a4a4)}
#bcv-vote-app .bcv-stars.bcv-previewing .bcv-star.bcv-preview-on{color:var(--color-gold,#d79c16)}
#bcv-vote-app .bcv-star:focus-visible{outline:2px solid var(--color-gold,#d79c16);outline-offset:2px}
#bcv-vote-app .bcv-rating-label{font-weight: bold;min-height:1.3em;margin-top:5px}
#bcv-vote-app .bcv-details{margin-top:26px;padding:20px;border:1px solid #ddd;background:#fafafa}
#bcv-vote-app .bcv-details h3{margin:0 0 14px}
#bcv-vote-app .bcv-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
#bcv-vote-app .bcv-field{display:flex;flex-direction:column;gap:4px}
#bcv-vote-app .bcv-field label{font-size:.9rem;font-weight:700}
#bcv-vote-app .bcv-field input,#bcv-vote-app .bcv-field select{border:1px solid #b8b8b8;border-radius:3px;padding:10px;min-width:0;background:#fff}
#bcv-vote-app .bcv-field.wide{grid-column:1/-1}
#bcv-vote-app .bcv-terms{display:flex;align-items:flex-start;gap:8px;margin:15px 0}
#bcv-vote-app .bcv-terms input{margin-top:5px;accent-color:#e3000b}
#bcv-vote-app .bcv-privacy-info{font-size:90%;margin:5px 0 16px;line-height:1.5}
#bcv-vote-app .bcv-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:20px}
#bcv-vote-app .bcv-visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#bcv-vote-app .bcv-ok{background:#edf7ed;border-left:4px solid #35843a;padding:18px}
#bcv-watch-dialog{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;background:#000d;padding:16px}
#bcv-watch-dialog .bcv-dialog-box{width:min(900px,100%);background:#111;color:#fff;box-shadow:0 10px 40px #000b}
#bcv-watch-dialog .bcv-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px}
#bcv-watch-dialog .bcv-dialog-head strong{font-size:.95rem;color:#fff}
#bcv-watch-dialog .bcv-close{border:1px solid #777;background:#333;color:#fff;padding:7px 13px;border-radius:3px}
#bcv-watch-dialog .bcv-player{aspect-ratio:16/9;background:#000}
#bcv-watch-dialog iframe{width:100%;height:100%;border:0}
@media(max-width:950px){#bcv-vote-app .bcv-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){#bcv-vote-app .bcv-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 9px}#bcv-vote-app .bcv-rate-grid{grid-template-columns:1fr}#bcv-vote-app .bcv-fields{grid-template-columns:1fr}#bcv-vote-app .bcv-choice-bar{flex-direction:column;align-items:stretch}#bcv-vote-app .bcv-choice-bar .bcv-action{width:100%}#bcv-vote-app .bcv-title{font-size:.86rem}#bcv-vote-app .bcv-card-body{padding:8px}#bcv-vote-app .bcv-ballot-header{align-items:flex-start;flex-direction:column}}
@media(max-width:380px){#bcv-vote-app .bcv-gallery{grid-template-columns:1fr}}


/* Optional email verification, scoped to this voting app */
#bcv-vote-app .bcv-verify-panel{max-width:640px;margin:26px auto;padding:24px;border:1px solid #ddd;background:#fafafa}
#bcv-vote-app .bcv-verify-panel h2{margin-top:0}
#bcv-vote-app #bcv-verify-form{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:20px 0}
#bcv-vote-app #bcv-verify-form label{width:100%;font-weight:700}
#bcv-vote-app #bcv-verification-code{border:1px solid #aaa;border-radius:3px;background:#fff;padding:11px 14px;max-width:175px;font-size:1.3rem;letter-spacing:.15em}
#bcv-vote-app .bcv-verify-hint{font-size:.9rem;color:#555}
#bcv-vote-app .bcv-verify-actions{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}

/* Article 495: compact CMS-authored intro and collapsible rules; separate from voting UI. */
.bcv2026-article > h1{margin:0 0 14px;line-height:1.2; text-align: center;}
.bcv2026-article .bcv2026-cms-intro{margin:0 0 16px;line-height:1.55}
.bcv2026-article .bcv2026-cms-intro p{margin:0 0 10px}
.bcv2026-article .bcv2026-cms-intro > :last-child{margin-bottom:0}
.bcv2026-article .bcv2026-rules{margin:0 0 17px;border:1px solid #e0e2e5;border-radius:9px;background:#fff;overflow:hidden}
.bcv2026-article .bcv2026-rules > summary{padding:13px 18px;cursor:pointer;list-style:none;font-weight:700;background:#fafafa}
.bcv2026-article .bcv2026-rules > summary::-webkit-details-marker{display:none}
.bcv2026-article .bcv2026-rules > summary::after{content:'+';float:right;font-size:20px;line-height:1;color:#595f69}
.bcv2026-article .bcv2026-rules[open] > summary::after{content:'−'}
.bcv2026-article .bcv2026-rules > summary:hover{background:#f2f3f5}
.bcv2026-article .bcv2026-rules > summary:focus-visible{outline:3px solid #e3000b;outline-offset:-3px}
.bcv2026-article .bcv2026-rules-body{padding:14px 18px 18px;line-height:1.55}
.bcv2026-article .bcv2026-rules-body > :first-child{margin-top:0}
.bcv2026-article .bcv2026-rules-body > :last-child{margin-bottom:0}
.bcv2026-article .bcv2026-rules-body li{margin-bottom:7px}
.bcv2026-article #bcv-vote-app{margin-top:14px}

/* 2026 People's Vote - HTML/CSS instructional graphic. All rules are scoped. */
.bcv2026-guide { --bcv-guide-ink: #151823; font: inherit; color: var(--bcv-guide-ink); margin: 20px 0 22px; }
.bcv2026-guide, .bcv2026-guide * { box-sizing: border-box; }
.bcv2026-guide details { border: 1px solid #dce0e6; border-radius: 10px; background: #fff; overflow: hidden; }
.bcv2026-guide summary { list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 18px; background: #f6f7f9; font-size: 1rem; font-weight: 750; cursor: pointer; }
.bcv2026-guide summary::-webkit-details-marker { display: none; }
.bcv2026-guide summary:focus-visible { outline: 3px solid #e3000b; outline-offset: -3px; }
.bcv2026-guide summary:hover { background: #eff1f4; }
.bcv2026-guide .bcv-guide-summary-left { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; }
.bcv2026-guide .bcv-guide-summary-icon { flex: none; display: inline-grid; place-items: center; height: 24px; width: 24px; border: 1.8px solid #313d53; border-radius: 50%; line-height: 1; font-weight: 800; font-size: .9rem; }
.bcv2026-guide .bcv-guide-summary-action { flex: none; display: inline-flex; align-items: center; gap: 8px; color: #48546a; font-size: .78rem; font-weight: 600; }
.bcv2026-guide details[open] .bcv-guide-action-show { display: none; }
.bcv2026-guide details:not([open]) .bcv-guide-action-hide { display: none; }
.bcv2026-guide .bcv-guide-chevron { display: inline-block; width: 8px; height: 8px; border-right: 2px solid; border-bottom: 2px solid; transform: rotate(45deg) translateY(-2px); transition: transform .2s; }
.bcv2026-guide details[open] .bcv-guide-chevron { transform: rotate(225deg) translate(-2px, -1px); }
.bcv2026-guide .bcv-guide-inner { padding: 22px 20px 16px; }
.bcv2026-guide .bcv-guide-tagline { margin: 0 0 22px; text-align: center; font-weight: 850; font-size: clamp(1.25rem, 2.7vw, 2.25rem); line-height: 1.2; letter-spacing: -.04em; }
.bcv2026-guide .bcv-guide-tagline span:nth-child(1) { color: var(--color-teal); }
.bcv2026-guide .bcv-guide-tagline span:nth-child(2) { color: var(--color-orange); }
.bcv2026-guide .bcv-guide-tagline span:nth-child(3) { color: #dc2669; }
.bcv2026-guide .bcv-guide-grid { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 11px; align-items: stretch; }
.bcv2026-guide .bcv-guide-card { --step: #008e84; --tint: #e5f6e6; display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid #e4e7ec; border-radius: 9px; background: #fff; box-shadow: 0 2px 8px rgba(20, 28, 42, .055); }
.bcv2026-guide .bcv-guide-orange { --step: #ec7800; --tint: #fff0dc; }
.bcv2026-guide .bcv-guide-pink { --step: #dc2669; --tint: #ffe5ec; }
.bcv2026-guide .bcv-guide-purple { --step: #8228af; --tint: #f4e4f9; }
.bcv2026-guide .bcv-guide-blue { --step: #1267d6; --tint: #e3eeff; }

.bcv2026-guide .bcv-guide-number { display: block; padding: 9px 12px 8px; background: var(--step); color: #fff; font-size: .82rem; letter-spacing: .055em; line-height: 1.3; font-weight: 850; text-align: center; }

.bcv2026-guide .bcv-guide-body { padding: 16px 12px 13px; flex: 1; text-align: center; }
.bcv2026-guide .bcv-guide-body h4 { margin: 0 0 10px; font-size: clamp(.95rem, 1.5vw, 1.17rem); line-height: 1.18; font-weight: 800; color: #121827; }
.bcv2026-guide .bcv-guide-body p { margin: 0; text-align: center!important; }
.bcv2026-guide .bcv-guide-illustration { display: grid; place-items: center; min-height: 76px; color: var(--step); background: var(--tint); }
.bcv2026-guide .bcv-guide-icon { height: 43px; width: 43px; }
.bcv2026-guide .bcv-guide-note { margin: 14px 0 0; text-align: center!important; }
@media (max-width: 1020px) {
 .bcv2026-guide .bcv-guide-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
 .bcv2026-guide .bcv-guide-body h4 { font-size: 1.1rem; }
}
@media (max-width: 650px) {
 .bcv2026-guide .bcv-guide-inner { padding: 18px 12px 14px; }
 .bcv2026-guide .bcv-guide-grid { grid-template-columns: 1fr; gap: 8px; }
 .bcv2026-guide .bcv-guide-card { flex-direction: row; align-items: stretch; border-radius: 8px; min-height: 92px; }
 .bcv2026-guide .bcv-guide-number { display: flex; align-items: center; justify-content: center; flex: 0 0 56px; padding: 6px; font-size: .72rem; text-align: center; }
 .bcv2026-guide .bcv-guide-body { display: flex; flex-direction: column; justify-content: center; padding: 11px 10px; text-align: left; }
 .bcv2026-guide .bcv-guide-body h4 { margin: 0 0 4px; font-size: 1rem; }
 .bcv2026-guide .bcv-guide-body p { font-size: .81rem; line-height: 1.35; text-align: left!important; }
 .bcv2026-guide .bcv-guide-illustration { flex: 0 0 56px; min-height: 92px; }
 .bcv2026-guide .bcv-guide-icon { height: 29px; width: 29px; }
 .bcv2026-guide .bcv-guide-summary-action { font-size: 0; }
 .bcv2026-guide .bcv-guide-tagline { font-size: 1.28rem; }
}
@media (prefers-reduced-motion: reduce) { .bcv2026-guide details[open] .bcv-guide-action-show { display: none; }
.bcv2026-guide details:not([open]) .bcv-guide-action-hide { display: none; }
.bcv2026-guide .bcv-guide-chevron { transition: none; } }
