/* Base scaffold styles (minimal) */
*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:#111;background:#fff}
.container{max-width:960px;margin:0 auto;padding:16px}
.hero{padding:48px 0}
.brand{font-weight:700;margin-right:16px;text-decoration:none;color:#0a5}
.nav{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #eee;padding:12px 16px}
.nav-list{display:flex;gap:12px;list-style:none;margin:0;padding:0}
.nav-list a{text-decoration:none;color:#333}
.nav-toggle{display:none}
@media (max-width:720px){
  .nav-list{display:none;flex-direction:column;align-items:flex-start}
  .nav-toggle{display:block;background:#eee;border:0;padding:8px 10px;border-radius:6px}
}
.btn{background:#0a5;color:#fff;border:0;border-radius:8px;padding:10px 14px;font-weight:600;cursor:pointer}
.btn:hover{opacity:.95}
label{display:block;margin:12px 0}
input{width:100%;padding:10px;border:1px solid #ddd;border-radius:8px}
.tiny{font-size:.85rem;color:#666}
.muted{color:#666}
.site-footer{border-top:1px solid #eee;margin-top:48px;padding:16px 0}
.hidden{display:none}


/* --- Original styles.css appended below --- */
/* Shared, mobile-first styles */
:root {
  --bg: #0b0f10;
  --bg-alt: #12181a;
  --text: #e8f0f2;
  --muted: #a7b0b3;
  --brand: #38bdf8;
  --brand-ink: #06202b;
  --card: #1b2326;
  --chip: #1f2937;
  --border: #1f2430;
  --accent2: #10b981;
  --danger: #ef4444;
  --radius: 12px;
  --maxw: 1100px;
}
* { box-sizing: border-box; }
html, body { height: 100%; }
body {
  margin: 0;
  font: 16px/1.6 system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, "Helvetica Neue", Arial;
  color: var(--text);
  background: radial-gradient(1200px 800px at 20% -10%, #0e1518, var(--bg));
}
.section { padding: 56px 20px; }
.section--alt { background: var(--bg-alt); }
h1, h2 { line-height: 1.2; margin: 0 0 16px; }
p { margin: 0 0 16px; }
a { color: var(--brand); text-decoration: none; }
a:hover { text-decoration: underline; }
.tiny { font-size: 12px; color: var(--muted); }

.site-header {
  position: sticky; top: 0; z-index: 50;
  display: flex; align-items: center; justify-content: space-between;
  gap: 16px; padding: 14px 16px; background: rgba(11,15,16,0.7); backdrop-filter: blur(8px);
  border-bottom: 1px solid rgba(255,255,255,0.06);
}
.logo { font-weight: 700; letter-spacing: .3px; color: var(--text); display:flex; align-items:center; gap:10px; }
.nav { display: none; gap: 12px; }
.nav a { padding: 8px 10px; border-radius: 8px; }
.nav a.is-active, .nav a:hover { background: rgba(255,255,255,0.06); }
.nav-toggle { background: none; color: var(--text); border: 1px solid rgba(255,255,255,0.2); border-radius: 8px; padding: 8px 10px; }

.hero { padding: 72px 20px; background: linear-gradient(180deg, rgba(56,189,248,0.08), rgba(0,0,0,0)); }
.hero__inner { max-width: var(--maxw); margin: 0 auto; text-align: center; }
.logo-mark { width: 28px; height: 28px; }
.hero-graphic { width: 88px; height: 88px; opacity: .95; }
.tagline { color: var(--muted); font-size: 1.1rem; }

.btn {
  display: inline-block; padding: 12px 16px; border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.18);
  text-decoration: none; color: var(--text);
}
.btn--primary { background: var(--brand); color: var(--brand-ink); border-color: transparent; font-weight: 700; }
.btn--primary:hover { filter: brightness(0.95); }
.btn-outline { background: transparent; border: 1px solid var(--brand); color: var(--brand); }
.btn.small { padding: 6px 8px; font-size: 12px; }

.card {
  background: var(--card); border: 1px solid rgba(255,255,255,0.08); border-radius: var(--radius);
  padding: 20px; max-width: 560px; margin: 0 auto;
  display: grid; gap: 12px;
}
input, button {
  font: inherit; border-radius: 10px; border: 1px solid rgba(255,255,255,0.14);
  background: #0f1517; color: var(--text); padding: 10px 12px; width: 100%;
}
button { cursor: pointer; }
label { display: grid; gap: 6px; font-weight: 600; }

.steps { display: grid; gap: 8px; padding-left: 20px; }
.muted { color: var(--muted); }
.page-title { padding: 24px 16px 0; margin: 0 auto; max-width: 720px; }
.app.app--narrow { max-width: 720px; margin: 0 auto; padding-bottom: 64px; }
.list { padding: 10px 12px 80px; }
.card.list-item { margin: 10px 0; }

.bar { height: 10px; background: #222933; border-radius: 6px; overflow: hidden; }
.bar > .fill { height: 100%; background: var(--accent2); }
.bar.red > .fill { background: var(--danger); }
.legend { display:flex; gap: 8px; flex-wrap:wrap; font-size:12px; }
.legend span { display:inline-flex; align-items:center; gap:6px; }
.box { width:10px; height:10px; border-radius:2px; display:inline-block; }
.box.green { background: var(--accent2); }
.box.red { background: var(--danger); }
.box.gray { background: #6b7280; }
.leader { border-top: 1px solid var(--border); margin-top: 10px; }
.leader .item { display:flex; align-items:center; padding: 8px 0; gap: 10px; border-bottom: 1px solid #121826; }
.leader .item .pct { margin-left: auto; font-variant-numeric: tabular-nums; }

.detail { position: fixed; inset: 0; background: rgba(0,0,0,0.6); display: none; align-items: flex-end; z-index: 20; }
.sheet { background: #0f1420; border-top-left-radius: 16px; border-top-right-radius: 16px; padding: 14px;
  max-height: 92vh; overflow:auto; border-top: 1px solid var(--border); }
.close { position: sticky; top: 0; display: flex; justify-content: flex-end; }

.site-footer { padding: 40px 20px; color: var(--muted); text-align: center; }

@media (min-width: 768px) {
  .nav { display: flex; }
  .nav-toggle { display: none; }
  .hero { padding: 104px 20px; }
  .section, .site-header, .site-footer { display: block; }
  main > .section, .hero__inner { max-width: var(--maxw); margin: 0 auto; }
}

/* ===== Live Polls ========================================================= */
.live-polls .lp-shell { max-width: 900px; margin: 0 auto; padding: 1rem; }
.live-polls .lp-title { font-size: 1.75rem; margin: .25rem 0 1rem; }

.live-polls .lp-filterbar {
  position: sticky; top: 0; z-index: 20; background: var(--bg, #fff);
  padding: .5rem; border-bottom: 1px solid rgba(0,0,0,.08); backdrop-filter: blur(6px);
}
.live-polls .lp-filter-row { display: grid; grid-template-columns: 1fr 1fr 1fr auto auto; gap: .5rem; align-items: center; }
@media (max-width: 640px) {
  .live-polls .lp-filter-row { grid-template-columns: 1fr 1fr; }
}
.live-polls .lp-select { width: 100%; padding: .5rem .6rem; border: 1px solid #ccc; border-radius: .5rem; background: #fff; }
.live-polls .lp-period { display: inline-flex; gap: .4rem; align-items: center; margin: 0; }
.live-polls .lp-legend { position: absolute; left: -9999px; }
.live-polls .lp-chip { display: inline-flex; align-items: center; gap: .4rem; border: 1px solid #ccc; border-radius: 999px; padding: .25rem .6rem; cursor: pointer; }
.live-polls .lp-chip input { accent-color: #0a5; }
.live-polls .lp-link { background: none; border: none; color: #0a5; text-decoration: underline; cursor: pointer; }

.live-polls .lp-list { display: grid; gap: .75rem; margin-top: 1rem; }
.live-polls .lp-card {
  border: 1px solid rgba(0,0,0,.12); border-radius: .75rem; padding: .9rem; background: #fff;
  box-shadow: 0 1px 2px rgba(0,0,0,.05);
}
.live-polls .lp-card:focus { outline: 3px solid #0a5; outline-offset: 2px; }
.live-polls .lp-card-hd { display: flex; justify-content: space-between; align-items: start; gap: .6rem; }
.live-polls .lp-card-title { display: flex; gap: .5rem; align-items: center; }
.live-polls .lp-flag { font-size: 1.25rem; }
.live-polls .lp-h3 { font-size: 1.1rem; margin: 0; }
.live-polls .lp-summary { margin: .25rem 0 .5rem; color: #444; }
.live-polls .lp-topics { display: flex; gap: .4rem; flex-wrap: wrap; }
.live-polls .lp-chip-badge { font-size: .85rem; border-radius: 999px; padding: .2rem .6rem; border: 1px solid transparent; }
.live-polls .lp-chip-badge.ok { background: #e9f9f0; border-color: #c7eedc; color: #117a4d; }
.live-polls .lp-chip-badge.bad { background: #fdeaea; border-color: #f6c6c6; color: #8a1f1f; }
.live-polls .lp-chip-badge.warn { background: #fff6e5; border-color: #ffe2a8; color: #8a5a00; }
.live-polls .lp-chip-badge.muted { background: #f3f4f6; border-color: #e5e7eb; color: #4b5563; }

.live-polls .lp-total { display: flex; gap: .25rem; align-items: baseline; color: #333; margin: .4rem 0; }
.live-polls .lp-btnrow { display: grid; grid-template-columns: repeat(3, 1fr); gap: .5rem; margin: .5rem 0; }
.live-polls .lp-btn { padding: .55rem .75rem; border-radius: .6rem; border: 1px solid #ccc; cursor: pointer; }
.live-polls .lp-btn:focus { outline: 3px solid #0a5; outline-offset: 2px; }
.live-polls .lp-btn-primary { background: #0a5; border-color: #0a5; color: #fff; }
.live-polls .lp-btn-outline { background: #fff; }
.live-polls .lp-btn-ghost { background: transparent; border-color: transparent; color: #0a5; }

.live-polls .lp-bar { display: flex; width: 100%; height: 28px; border-radius: 999px; overflow: hidden; border: 1px solid rgba(0,0,0,.12); }
.live-polls .lp-seg { position: relative; width: var(--w); display: flex; align-items: center; justify-content: center; font-size: .8rem; }
.live-polls .lp-seg.yes { background: #e8f7ef; }
.live-polls .lp-seg.no { background: #fbeaea; }
.live-polls .lp-seg.ab { background: #f3f4f6; }
.live-polls .lp-seg.me { outline: 3px solid rgba(0,170,85,.5); outline-offset: -3px; }
.live-polls .lp-seg-lbl { mix-blend-mode: multiply; }
.live-polls .lp-compare { margin-top: .4rem; }
.live-polls .lp-chip-compare { font-size: .85rem; padding: .2rem .5rem; border-radius: 999px; border: 1px solid transparent; }
.live-polls .lp-chip-compare.agree { background: #e9f9f0; color: #117a4d; border-color: #c7eedc; }
.live-polls .lp-chip-compare.disagree { background: #fdeaea; color: #8a1f1f; border-color: #f6c6c6; }
.live-polls .lp-chip-compare.neutral { background: #f3f4f6; color: #4b5563; border-color: #e5e7eb; }

.live-polls .lp-related { margin-top: .6rem; }
.live-polls .lp-related-hd { font-size: .9rem; color: #555; margin-bottom: .35rem; }
.live-polls .lp-related-strip { display: grid; grid-auto-flow: column; grid-auto-columns: 70%; gap: .5rem; overflow-x: auto; padding-bottom: .25rem; }
@media (min-width: 640px) { .live-polls .lp-related-strip { grid-auto-columns: 33%; } }
.live-polls .lp-related-item { text-align: left; border: 1px solid rgba(0,0,0,.12); border-radius: .6rem; padding: .5rem; background: #fff; cursor: pointer; }
.live-polls .lp-rel-flag { margin-right: .4rem; }

.live-polls .lp-fab {
  position: fixed; right: 1rem; top: 90px; z-index: 50;
  display: inline-flex; align-items: center; gap: .5rem;
  background: #0a5; color: #fff; border: none; border-radius: 999px; padding: .6rem .9rem; box-shadow: 0 6px 20px rgba(0,0,0,.25);
}
.live-polls .lp-fab:focus { outline: 3px solid #0a5; outline-offset: 2px; background: #097; }
.live-polls .lp-fab-count { font-weight: 700; min-width: 1.5rem; text-align: center; }
.live-polls .lp-fab.pop { animation: lp-pop .32s ease-out; }
@keyframes lp-pop { 0% { transform: scale(1); } 60% { transform: scale(1.07); } 100% { transform: scale(1); } }

.live-polls .lp-drawer-overlay {
  position: fixed; inset: 0; background: rgba(0,0,0,.38); z-index: 60;
}
.live-polls .lp-drawer {
  position: fixed; right: 0; top: 0; bottom: 0; width: min(520px, 100%); background: #fff; z-index: 70;
  transform: translateX(0); border-left: 1px solid rgba(0,0,0,.12); padding: 1rem; overflow: auto;
}
.live-polls .lp-no-scroll { overflow: hidden; }
.live-polls .lp-drawer-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: .75rem; }
.live-polls .lp-iconbtn { background: transparent; border: 1px solid rgba(0,0,0,.2); border-radius: .5rem; padding: .25rem .5rem; cursor: pointer; }
.live-polls .lp-cart-list { display: grid; gap: .5rem; }
.live-polls .lp-empty { color: #666; }
.live-polls .lp-cart-item { border: 1px solid rgba(0,0,0,.1); border-radius: .6rem; padding: .5rem; display: grid; gap: .4rem; }
.live-polls .lp-ci-title { display: flex; align-items: center; gap: .5rem; }
.live-polls .lp-ci-actions { display: flex; gap: .4rem; align-items: center; flex-wrap: wrap; }
.live-polls .opt { border: 1px solid #ddd; padding: .2rem .6rem; border-radius: 999px; }
.live-polls .opt.yes.is-active { background: #e9f9f0; border-color: #c7eedc; }
.live-polls .opt.no.is-active { background: #fdeaea; border-color: #f6c6c6; }
.live-polls .opt.abstain.is-active { background: #f3f4f6; border-color: #e5e7eb; }
.live-polls .lp-subscribe { border-top: 1px solid rgba(0,0,0,.08); margin-top: .75rem; padding-top: .75rem; display: grid; gap: .5rem; }
.live-polls .lp-email-row { display: grid; grid-template-columns: 1fr; gap: .35rem; }
.live-polls .lp-email-label { font-size: .9rem; color: #444; }
.live-polls .lp-error { color: #8a1f1f; }
.live-polls .lp-drawer-actions { display: flex; gap: .5rem; justify-content: flex-end; margin-top: .75rem; }

.live-polls .lp-message { margin:.5rem 0; padding:.5rem .75rem; border-radius:.5rem; border:1px solid transparent; }
.live-polls .lp-message.info { background:#eef8ff; border-color:#cfe8ff; color:#0b4a7a; }
.live-polls .lp-message.warn { background:#fff6e5; border-color:#ffe2a8; color:#8a5a00; }
.live-polls .lp-message.success { background:#e9f9f0; border-color:#c7eedc; color:#117a4d; }
.live-polls .lp-message.error { background:#fdeaea; border-color:#f6c6c6; color:#8a1f1f; }

/* Reuse site accent when present */
@media (prefers-color-scheme: dark) {
  .live-polls .lp-card, .live-polls .lp-related-item, .live-polls .lp-drawer { background: #111; color: #eee; border-color: rgba(255,255,255,.12); }
  .live-polls .lp-select, .live-polls .lp-btn { background:#111; color:#eee; border-color: rgba(255,255,255,.2); }
  .live-polls .lp-filterbar { background: rgba(0,0,0,.7); }
}

/* === Live Polls — Theme Fix (use site tokens instead of hard-coded white) === */
.live-polls {
  /* Hook into site tokens, with fallbacks */
  --lp-accent: var(--accent, #0a5);
  --lp-text:   var(--text, #111);
  --lp-muted:  var(--muted, #555);
  --lp-bg:     var(--bg, #fff);
  --lp-surface:var(--surface, #fff);
  --lp-border: var(--border, rgba(0,0,0,.12));

  /* Chart tints */
  --lp-yes-bg: rgba(56,189,248,.22);   /* light blue */
  --lp-no-bg:  rgba(139,92,246,.20);   /* light purple */
  --lp-ab-bg:  rgba(154,163,178,.18); /* grey */
}

/* Respect dark theme via class OR user preference */
:where(html.dark, body.dark, [data-theme="dark"]) .live-polls {
  --lp-text:   var(--text, #eaeef7);
  --lp-muted:  var(--muted, #9aa3b2);
  --lp-bg:     var(--bg, #0b0f1a);
  --lp-surface:var(--surface, #101418);
  --lp-border: var(--border, rgba(255,255,255,.12));
  --lp-yes-bg: rgba(56,189,248,.28);
  --lp-no-bg:  rgba(139,92,246,.26);
  --lp-ab-bg:  rgba(154,163,178,.22);
}

/* Light/dark by OS if no theme class is set */
@media (prefers-color-scheme: dark) {
  .live-polls:not(.force-light) {
    --lp-text:   var(--text, #eaeef7);
    --lp-muted:  var(--muted, #9aa3b2);
    --lp-bg:     var(--bg, #0b0f1a);
    --lp-surface:var(--surface, #101418);
    --lp-border: var(--border, rgba(255,255,255,.12));
    --lp-yes-bg: rgba(56,189,248,.28);
    --lp-no-bg:  rgba(139,92,246,.26);
    --lp-ab-bg:  rgba(154,163,178,.22);
  }
}

/* Apply tokens to components (overrides earlier block) */
.live-polls .lp-shell { color: var(--lp-text); }
.live-polls .lp-filterbar {
  background: var(--lp-surface);
  border-bottom: 1px solid var(--lp-border);
}
.live-polls .lp-select {
  background: var(--lp-surface);
  color: var(--lp-text);
  border: 1px solid var(--lp-border);
}
.live-polls .lp-link { color: var(--lp-accent); }

.live-polls .lp-card {
  background: var(--lp-surface);
  color: var(--lp-text);
  border: 1px solid var(--lp-border);
}
.live-polls .lp-summary { color: var(--lp-muted); }
.live-polls .lp-total { color: var(--lp-text); }

.live-polls .lp-btn { border-color: var(--lp-border); color: var(--lp-text); background: var(--lp-surface); }
.live-polls .lp-btn-primary { background: var(--lp-accent); border-color: var(--lp-accent); color: #fff; }
.live-polls .lp-btn-ghost { color: var(--lp-accent); }

.live-polls .lp-bar { border-color: var(--lp-border); }
.live-polls .lp-seg.yes { background: var(--lp-yes-bg); }
.live-polls .lp-seg.no { background: var(--lp-no-bg); }
.live-polls .lp-seg.ab { background: var(--lp-ab-bg); }

.live-polls .lp-chip-badge.ok    { background: rgba(0,170,85,.14); color:#117a4d; border-color: var(--lp-border); }
.live-polls .lp-chip-badge.bad   { background: rgba(220,70,70,.14); color:#8a1f1f; border-color: var(--lp-border); }
.live-polls .lp-chip-badge.warn  { background: rgba(255,200,60,.14); color:#8a5a00; border-color: var(--lp-border); }
.live-polls .lp-chip-badge.muted { background: rgba(120,130,150,.12); color: var(--lp-muted); border-color: var(--lp-border); }

.live-polls .lp-related-item { background: var(--lp-surface); border-color: var(--lp-border); color: var(--lp-text); }

.live-polls .lp-fab { background: var(--lp-accent); }
.live-polls .lp-fab:focus { outline: 3px solid var(--lp-accent); }

.live-polls .lp-drawer-overlay { background: rgba(0,0,0,.45); }
.live-polls .lp-drawer {
  background: var(--lp-surface);
  color: var(--lp-text);
  border-left: 1px solid var(--lp-border);
}
.live-polls .lp-iconbtn { border-color: var(--lp-border); color: var(--lp-text); background: transparent; }
.live-polls .lp-error { color: #8a1f1f; }

/* === Live Polls — Theme Correction (bind to site tokens) === */
.live-polls{
  /* Map to existing site tokens */
  --lp-accent:  var(--accent2, #0a5);
  --lp-text:    var(--text);
  --lp-muted:   var(--muted);
  --lp-bg:      var(--bg);
  --lp-surface: var(--card, var(--bg-alt)); /* <-- key fix */
  --lp-border:  var(--border);

  --lp-yes-bg: rgba(56,189,248,.22);   /* tints for bars */
  --lp-no-bg:  rgba(239,68,68,.22);
  --lp-ab-bg:  rgba(120,130,150,.18);
}

/* Page/container text inherits site dark foreground */
.live-polls .lp-shell { color: var(--lp-text); }

/* Surfaces: use site cards instead of white */
.live-polls .lp-filterbar { background: var(--bg-alt) !important; border-bottom: 1px solid var(--lp-border) !important; }
.live-polls .lp-card,
.live-polls .lp-related-item,
.live-polls .lp-drawer,
.live-polls .lp-select,
.live-polls .lp-btn {
  background: var(--lp-surface) !important;
  color: var(--lp-text) !important;
  border-color: var(--lp-border) !important;
}

/* Controls / focus */
.live-polls .lp-btn-primary { background: var(--lp-accent) !important; border-color: var(--lp-accent) !important; color: #fff !important; }
.live-polls .lp-btn:focus,
.live-polls .lp-fab:focus { outline: 3px solid var(--lp-accent); outline-offset: 2px; }

/* Bars and chips match dark scheme */
.live-polls .lp-bar { border-color: var(--lp-border); }
.live-polls .lp-seg.yes { background: var(--lp-yes-bg); }
.live-polls .lp-seg.no {  background: var(--lp-no-bg); }
.live-polls .lp-seg.ab {  background: var(--lp-ab-bg); }

.live-polls .lp-chip-badge { border-color: var(--lp-border); }
.live-polls .lp-chip-badge.ok    { background: rgba(16,185,129,.16); color:#8be0bb; }
.live-polls .lp-chip-badge.bad   { background: rgba(239,68,68,.16);  color:#f9a8a8; }
.live-polls .lp-chip-badge.warn  { background: rgba(255,200,60,.16); color:#f6d58b; }
.live-polls .lp-chip-badge.muted { background: rgba(120,130,150,.12); color:var(--lp-muted); }

/* Drawer overlay matches site depth */
.live-polls .lp-drawer-overlay { background: rgba(0,0,0,.55) !important; }

/* Messages (use dark-friendly backgrounds) */
.live-polls .lp-message.info    { background: rgba(56,189,248,.12); border-color: var(--lp-border); color: var(--lp-text); }
.live-polls .lp-message.warn    { background: rgba(255,200,60,.12); border-color: var(--lp-border); color: var(--lp-text); }
.live-polls .lp-message.success { background: rgba(16,185,129,.12); border-color: var(--lp-border); color: var(--lp-text); }
.live-polls .lp-message.error   { background: rgba(239,68,68,.12);  border-color: var(--lp-border); color: var(--lp-text); }

/* === Live Polls — Button visibility, selected colors, drawer parity === */
.live-polls{
  /* selection colors */
  --lp-yes: var(--brand, #38bdf8);   /* blue */
  --lp-no:  #8b5cf6;                 /* purple */
  --lp-ab:  var(--muted, #9aa3b2);   /* gray */
}

/* Make choice buttons look like buttons (cards and drawer) */
.live-polls .lp-btnrow { display:grid; grid-template-columns: repeat(3, 1fr); gap:.5rem; }
.live-polls .lp-btn-choice,
.live-polls .lp-btn.lp-btn-outline { /* keep old class working */
  background: transparent;
  color: var(--lp-text);
  border: 1.5px solid var(--lp-border);
  border-radius: 12px;
  height: 56px;
  font-weight: 600;
  transition: background .15s ease, border-color .15s ease, box-shadow .15s ease;
}
.live-polls .lp-btn-choice:hover,
.live-polls .lp-btn.lp-btn-outline:hover {
  background: rgba(255,255,255,.03);
}

/* Selected states — color coded */
.live-polls .lp-btn.is-selected.is-yes,
.live-polls .lp-btn-choice.is-yes { border-color: var(--lp-yes); box-shadow: 0 0 0 2px rgba(56,189,248,.35); }
.live-polls .lp-btn.is-selected.is-no,
.live-polls .lp-btn-choice.is-no  { border-color: var(--lp-no);  box-shadow: 0 0 0 2px rgba(139,92,246,.35); }
.live-polls .lp-btn.is-selected.is-abstain,
.live-polls .lp-btn-choice.is-abstain { border-color: var(--lp-ab); box-shadow: 0 0 0 2px rgba(154,163,178,.35); }

/* Color-coded fills for choice buttons */
.live-polls .lp-btn-choice[data-opt="yes"] { background: rgba(56,189,248,.18); border-color: rgba(56,189,248,.45); }
.live-polls .lp-btn-choice[data-opt="no"]  { background: rgba(139,92,246,.18); border-color: rgba(139,92,246,.45); }
.live-polls .lp-btn-choice[data-opt="abstain"] { background: rgba(154,163,178,.18); border-color: rgba(154,163,178,.45); }

/* On selection, deepen the fill */
.live-polls .lp-btn-choice.is-yes { background: rgba(56,189,248,.28); }
.live-polls .lp-btn-choice.is-no  { background: rgba(139,92,246,.28); }
.live-polls .lp-btn-choice.is-abstain { background: rgba(154,163,178,.28); }


/* Drawer: use same layout as cards */
.live-polls .lp-cart-item .lp-ci-actions { padding-top:.25rem; }
.live-polls .lp-cart-item .lp-ci-actions.lp-btnrow { grid-template-columns: repeat(3,1fr); }
.live-polls .lp-cart-item .lp-remove { justify-self:end; background:none; border:0; color: var(--danger, #ef4444); text-decoration: underline; cursor:pointer; }

/* Color the "You vs Parliament" outline per segment */
.live-polls .lp-seg.yes.me { outline: 3px solid rgba(56,189,248,.55); }
.live-polls .lp-seg.no.me  { outline: 3px solid rgba(139,92,246,.55); }
.live-polls .lp-seg.ab.me  { outline: 3px solid rgba(154,163,178,.55); }

/* === PDV1 Custom Color Scheme (Yes/No/Abstain) — append only, do not remove existing styles === */

/* Chart segments */
.live-polls .lp-seg.yes { background-color: #B1644E !important; }
.live-polls .lp-seg.no  { background-color: #4E9BB1 !important; }
.live-polls .lp-seg.ab  { background-color: #837f7c !important; }

/* If you highlight "my vote" on the bar, match the same hue */
.live-polls .lp-seg.yes.me { outline: 3px solid rgba(177,100,78,.55) !important; }
.live-polls .lp-seg.no.me  { outline: 3px solid rgba(78,155,177,.55) !important; }
.live-polls .lp-seg.ab.me  { outline: 3px solid rgba(131,127,124,.55) !important; }

/* Choice buttons (cards + side pane) — default pastel fills */
.live-polls .lp-btn-choice[data-opt="yes"] {
  background-color: rgba(177,100,78,0.18) !important;
  border-color: #B1644E !important;
}
.live-polls .lp-btn-choice[data-opt="no"] {
  background-color: rgba(78,155,177,0.18) !important;
  border-color: #4E9BB1 !important;
}
.live-polls .lp-btn-choice[data-opt="abstain"] {
  background-color: rgba(131,127,124,0.18) !important;
  border-color: #837f7c !important;
}

/* Hover + selected states for stronger feedback */
.live-polls .lp-btn-choice[data-opt="yes"]:hover     { background-color: rgba(177,100,78,0.24) !important; }
.live-polls .lp-btn-choice[data-opt="no"]:hover      { background-color: rgba(78,155,177,0.24) !important; }
.live-polls .lp-btn-choice[data-opt="abstain"]:hover { background-color: rgba(131,127,124,0.24) !important; }

.live-polls .lp-btn-choice.is-yes {
  background-color: rgba(177,100,78,0.35) !important;
  border-color: #B1644E !important;
  box-shadow: 0 0 0 2px rgba(177,100,78,.35) !important;
}
.live-polls .lp-btn-choice.is-no {
  background-color: rgba(78,155,177,0.35) !important;
  border-color: #4E9BB1 !important;
  box-shadow: 0 0 0 2px rgba(78,155,177,.35) !important;
}
.live-polls .lp-btn-choice.is-abstain {
  background-color: rgba(131,127,124,0.35) !important;
  border-color: #837f7c !important;
  box-shadow: 0 0 0 2px rgba(131,127,124,.35) !important;
}

/* Move the green "Votes" FAB to the top-right without overlapping header */
.live-polls .lp-fab {
  top: 90px !important;
  right: 1rem !important;
  bottom: auto !important;
}
