/* ===== הקואליציה - חדר המצב. טוקנים מהדרך ל-61 ===== */
:root { --bg:#070b16; --bg2:#0c1224; --card:#111a30; --card2:#16213c; --line:#232f4e; --ink:#f5f7ff; --mut:#8b93ad;
  --gold:#ffd166; --red:#ff4d5e; --green:#3ddc84; --blue:#1d6ff2; --radius:18px; }
* { margin:0; padding:0; box-sizing:border-box; -webkit-tap-highlight-color:transparent; }
html { color-scheme:dark; overflow-x:clip; }
body { font-family:'Rubik',system-ui,sans-serif; background:#05070f; color:var(--ink); min-height:100dvh; direction:rtl; overflow-x:hidden; }
body::before { content:''; position:fixed; inset:0; pointer-events:none; z-index:0;
  background: radial-gradient(closest-side at 70% 8%, rgba(37,99,235,.28), transparent 70%),
    radial-gradient(closest-side at 18% 92%, rgba(255,209,102,.14), transparent 70%),
    radial-gradient(closest-side at 92% 70%, rgba(168,85,247,.12), transparent 70%); filter:blur(6px); }
body::after { content:''; position:fixed; inset:0; pointer-events:none; z-index:0; background:radial-gradient(ellipse at 50% 35%, transparent 45%, rgba(0,0,0,.55) 100%); }
#app { position:relative; z-index:1; max-width:520px; margin:0 auto; padding:18px 16px calc(84px + env(safe-area-inset-bottom)); }
.num { font-family:'Heebo','Secular One',sans-serif; font-weight:800; letter-spacing:.3px; }
.screen { display:flex; flex-direction:column; gap:14px; animation:in .35s ease both; }
@keyframes in { from { opacity:0; transform:translateY(8px); } }
.glass { background:linear-gradient(180deg, rgba(22,33,60,.82), rgba(17,26,48,.78)); border:1px solid var(--line); border-radius:var(--radius);
  box-shadow:0 10px 30px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.05); backdrop-filter:blur(10px); }
.h { font-family:'Secular One',sans-serif; font-size:26px; line-height:1.15; }
.src, .fine { color:var(--mut); font-size:13px; line-height:1.5; }
.fine { text-align:center; }
.warn { color:var(--gold); font-size:14px; text-align:center; background:rgba(255,209,102,.08); border:1px solid rgba(255,209,102,.25); border-radius:12px; padding:10px; }
.good { color:var(--green); font-size:15px; text-align:center; font-weight:600; }
.btn { font:600 17px 'Rubik',sans-serif; border:0; border-radius:14px; padding:14px 18px; cursor:pointer; color:var(--ink); background:var(--card2); }
.btn.gold { background:linear-gradient(180deg,#ffe08f,#ffc43d); color:#1a1300; box-shadow:0 8px 24px rgba(255,196,61,.28); }
.btn.big { width:100%; font-size:19px; padding:16px; margin-top:4px; }
.btn.ghost { background:transparent; border:1px solid var(--line); color:var(--mut); }
.live-dot { width:8px; height:8px; border-radius:50%; background:var(--red); display:inline-block; box-shadow:0 0 0 0 rgba(255,77,94,.6); animation:pulse 1.6s infinite; }
@keyframes pulse { 70% { box-shadow:0 0 0 8px rgba(255,77,94,0); } 100% { box-shadow:0 0 0 0 rgba(255,77,94,0); } }
.stage { align-self:flex-start; display:inline-flex; align-items:center; gap:8px; font:600 13px 'Rubik'; padding:6px 12px; border-radius:99px; background:rgba(255,77,94,.14); border:1px solid rgba(255,77,94,.35); }
.stage.poll { background:rgba(255,209,102,.1); border-color:rgba(255,209,102,.35); color:var(--gold); }
.stage.poll .live-dot { background:var(--gold); }
.stage.final { background:rgba(61,220,132,.12); border-color:rgba(61,220,132,.4); color:var(--green); }
/* בית */
.s-home { text-align:center; padding-top:9vh; gap:18px; }
.home-top { color:var(--mut); font-size:14px; display:flex; gap:8px; align-items:center; justify-content:center; letter-spacing:2px; }
.logo { font-family:'Secular One',sans-serif; font-size:64px; line-height:1; background:linear-gradient(180deg,#fff,#ffd166); -webkit-background-clip:text; background-clip:text; color:transparent; text-shadow:0 0 40px rgba(255,209,102,.15); }
.home-sub { color:#c9cfe4; font-size:17px; line-height:1.5; }
.home-win { color:var(--gold,#ffd166); font-size:15px; font-weight:600; margin:6px 0 0; }
.home-card { padding:6px 16px; }
.home-steps { display:none; padding:12px 18px; } .home-steps ol { margin:8px 0 0; padding-inline-start:20px; } .home-steps li { margin:6px 0; color:var(--muted, #c3c9de); line-height:1.45; }
.home-row { display:flex; justify-content:space-between; align-items:center; padding:12px 0; border-bottom:1px solid var(--line); }
.home-row:last-child { border:0; }
.home-row b { font-family:'Heebo'; font-weight:900; font-size:22px; color:var(--gold); }
.home-row span { color:#c9cfe4; }
/* תוצאות */
.hemi-card { padding:14px 10px 12px; }
.hemi { width:100%; height:auto; display:block; }
.hemi-61 { font:900 28px 'Heebo'; fill:var(--gold); }
.hemi-61s { font:600 12px 'Rubik'; fill:var(--gold); opacity:.8; }
.blocs { display:flex; flex-wrap:wrap; gap:6px; justify-content:center; margin-top:8px; }
.bloc { font-size:12px; color:var(--mut); background:rgba(255,255,255,.04); border:1px solid var(--line); border-radius:99px; padding:4px 10px; display:inline-flex; gap:6px; align-items:center; }
.bloc b { color:var(--ink); font-size:15px; }
.list { display:flex; flex-direction:column; gap:6px; }
.row { display:grid; grid-template-columns:minmax(0,max-content) 1fr 28px; align-items:center; gap:10px; }
.row .num { text-align:left; font-size:17px; }
.bar { height:8px; border-radius:99px; background:rgba(255,255,255,.05); position:relative; overflow:hidden; }
.bar::after { content:''; position:absolute; inset:0 0 0 auto; width:var(--w); background:var(--pc); border-radius:99px; }
.chip { display:inline-flex; align-items:center; gap:7px; font-weight:600; font-size:14px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.chip i { width:10px; height:10px; border-radius:3px; background:var(--pc); flex-shrink:0; box-shadow:0 0 8px var(--pc); }
/* מנהיגים */
.mono { display:inline-grid; place-items:center; border-radius:50%; background:radial-gradient(circle at 35% 30%, color-mix(in srgb, var(--pc) 70%, #fff), var(--pc)); color:var(--pk); font-family:'Secular One'; flex-shrink:0; box-shadow:0 0 0 2px rgba(255,255,255,.12); }
.leads { display:flex; flex-direction:column; gap:10px; }
.lead-card { display:flex; align-items:center; gap:14px; padding:14px; text-align:right; color:var(--ink); cursor:pointer; border-inline-start:4px solid var(--pc); font-family:'Rubik'; }
.lead-txt { display:flex; flex-direction:column; gap:3px; }
.lead-txt b { font-family:'Secular One'; font-size:21px; font-weight:400; }
.lead-txt small { color:var(--mut); font-size:13px; }
.lead-txt small.roles { color:var(--gold); font-size:12px; line-height:1.35; }
.myrec .btn { margin:4px 0 0 6px; }
.free summary { color:var(--gold); cursor:pointer; padding:8px 0; font-weight:600; }
.leads.small .lead-card { padding:10px; }
.leads.small .lead-txt b { font-size:17px; }
/* התייעצויות ומשא ומתן */
.tally { padding:12px 14px; display:flex; flex-direction:column; gap:10px; }
.t-row { display:grid; grid-template-columns:34px 1fr 34px; grid-template-rows:auto 6px; align-items:center; column-gap:10px; row-gap:4px; }
.t-row span:nth-child(2) { font-weight:600; }
.t-row .num { font-size:20px; text-align:left; }
.t-bar { grid-column:2 / 4; height:6px; border-radius:99px; background:rgba(255,255,255,.06); position:relative; }
.t-bar::after { content:''; position:absolute; inset:0 0 0 auto; width:var(--w); background:var(--pc); border-radius:99px; }
.t-bar::before { content:''; position:absolute; top:-4px; bottom:-4px; right:50.8%; width:2px; background:var(--gold); z-index:1; }
.t-61 { color:var(--gold); font-size:12px; text-align:center; }
.recs { display:flex; flex-direction:column; gap:8px; }
.rec { padding:11px 13px; }
.rec-h { display:flex; align-items:center; gap:8px; }
.rec-h .num { color:var(--mut); font-size:15px; }
.rec-to { margin-inline-start:auto; font-weight:600; font-size:14px; color:var(--gold); white-space:nowrap; }
.rec-to.none { color:var(--mut); }
.rec p { color:#c3c9de; font-size:13.5px; line-height:1.5; margin-top:6px; }
.tag { margin-inline-start:auto; font-size:12px; font-weight:600; padding:3px 9px; border-radius:99px; white-space:nowrap; }
.tag.talk { background:rgba(61,220,132,.14); color:var(--green); }
.tag.outside { background:rgba(255,209,102,.12); color:var(--gold); }
.tag.refuse { background:rgba(255,77,94,.14); color:var(--red); }
.tag.own { background:rgba(255,255,255,.08); color:var(--ink); }
.rec.refuse { opacity:.78; }
.reach { display:flex; align-items:center; gap:14px; padding:14px; }
.reach .num { font-size:44px; line-height:1; }
.reach .ok { color:var(--green); } .reach .bad { color:var(--red); }
.reach span { color:#c3c9de; font-size:14px; line-height:1.45; }
/* מנדט */
.mandate { padding:28px 18px; text-align:center; display:flex; flex-direction:column; align-items:center; gap:10px; border-color:rgba(255,209,102,.35); }
.m-kicker { color:var(--mut); font-size:14px; }
.m-name { font-family:'Secular One'; font-size:36px; font-weight:400; color:var(--gold); }
.m-sub { font-size:16px; } .m-sub .num { color:var(--gold); }
.m-rule { color:var(--mut); font-size:13px; line-height:1.5; }
@media (min-width:900px) { #app { padding-top:32px; } }
.tag.unity { background:rgba(127,163,232,.14); color:#9fbaf0; }
.rec .clash { color:#ff8a95; font-size:12.5px; margin-top:4px; }

/* דיוקנאות */
.face { border-radius:50%; object-fit:cover; object-position:50% 20%; flex-shrink:0; box-shadow:0 0 0 2px var(--pc), 0 6px 18px rgba(0,0,0,.4); background:var(--card2); }
.mandate .face { box-shadow:0 0 0 3px var(--gold), 0 10px 40px rgba(255,209,102,.25); }
.est-tag, .est { display:inline-block; font-size:11.5px; color:var(--gold); opacity:.85; }
.est-tag { margin-top:6px; border:1px solid rgba(255,209,102,.35); border-radius:99px; padding:1px 8px; }
.s-home, .s-leader, .s-mandate { width:100%; }
/* משא ומתן */
.neg-top { display:grid; grid-template-columns:1fr 1fr; gap:6px 12px; padding:14px; position:sticky; top:8px; z-index:5; }
.clock, .count { display:flex; align-items:center; gap:10px; }
.count { justify-content:flex-end; }
.clock .num, .count .num { font-size:40px; line-height:1; } .clock .num { color:var(--gold); }
.count .num.ok { color:var(--green); }
.clock small, .count small { color:var(--mut); font-size:12px; line-height:1.3; }
.meter { grid-column:1/3; height:10px; border-radius:99px; background:rgba(255,255,255,.06); position:relative; display:flex; overflow:hidden; }
.meter i { display:block; height:100%; background:linear-gradient(90deg,#3ddc84,#2bb673); }
.meter i.ab { background:rgba(255,209,102,.45); }
.meter em { position:absolute; top:0; bottom:0; right:50.8%; width:2px; background:var(--gold); }
.kick { color:#c9cfe4; font-size:14px; }
.draft { padding:12px 14px; display:flex; flex-direction:column; gap:8px; }
.draft small { color:var(--mut); font-size:12.5px; }
.seg { display:flex; gap:6px; }
.seg button, .ports button { flex:1; font:600 14px 'Rubik'; color:var(--ink); background:rgba(255,255,255,.05); border:1px solid var(--line); border-radius:10px; padding:9px 6px; cursor:pointer; }
.seg button.on, .ports button.on { background:rgba(255,209,102,.16); border-color:var(--gold); color:var(--gold); }
.rec.party { text-align:right; color:var(--ink); font-family:'Rubik'; cursor:pointer; width:100%; }
.rec.party.in { border-color:rgba(61,220,132,.5); }
.probs, .whynot { padding:12px 14px; display:flex; flex-direction:column; gap:8px; }
.probs { border-color:rgba(255,77,94,.5); }
.probs p, .whynot p { font-size:13.5px; color:#c3c9de; line-height:1.5; }
/* פגישה */
.back { align-self:flex-start; background:none; border:0; color:var(--mut); font:600 15px 'Rubik'; cursor:pointer; }
.meet-h { display:flex; align-items:center; gap:16px; padding:16px; border-inline-start:4px solid var(--pc); }
.meet-h p { color:var(--mut); margin-top:4px; }
.brief, .offer, .reply { padding:12px 14px; display:flex; flex-direction:column; gap:8px; font-size:14px; line-height:1.5; color:#c3c9de; }
.brief b, .offer > b { color:var(--ink); }
.reply.accept { border-color:rgba(61,220,132,.5); } .reply.reject { border-color:rgba(255,77,94,.5); } .reply.counter { border-color:rgba(127,163,232,.5); }
.reply .tag { margin:0; align-self:flex-start; }
.ports { display:flex; flex-wrap:wrap; gap:6px; }
.ports button { flex:0 0 auto; font-size:13px; padding:7px 10px; }
.line { display:flex; justify-content:space-between; align-items:center; gap:10px; padding:6px 0; border-top:1px solid var(--line); }
.line small { display:block; color:var(--mut); font-size:11.5px; margin-top:2px; }
.line input { width:22px; height:22px; accent-color:var(--gold); flex-shrink:0; }
.step { display:flex; align-items:center; gap:10px; }
.step button { width:34px; height:34px; border-radius:10px; border:1px solid var(--line); background:var(--card2); color:var(--ink); font-size:20px; cursor:pointer; }
/* השבעה */
.ticker { display:flex; align-items:center; gap:8px; background:#b3121f; color:#fff; font:700 14px 'Rubik'; padding:8px 12px; border-radius:10px; }
.vote { display:grid; grid-template-columns:repeat(3,1fr); text-align:center; padding:16px; }
.vote .num { font-size:46px; display:block; } .vote .ok { color:var(--green); } .vote .bad { color:var(--red); }
.vote small { color:var(--mut); }
.cab { padding:0; overflow:hidden; }
.cab-h { background:linear-gradient(90deg,#ffd166,#ffb703); color:#1a1300; font:400 20px 'Secular One'; padding:10px 14px; }
.cab-row { display:grid; grid-template-columns:1fr 1.2fr auto; gap:8px; align-items:center; padding:8px 14px; border-bottom:1px solid var(--line); border-inline-start:4px solid var(--pc); font-size:14px; }
.cab-row.pm { background:rgba(255,209,102,.07); font-size:16px; }
.cab-role { color:var(--mut); } .cab-who { font-weight:700; display:flex; align-items:center; gap:8px; }
.cab-row .chip { font-size:12px; }
.cab-foot { padding:10px 14px; font-size:12.5px; color:var(--mut); line-height:1.5; }
.cab .est { padding:0 14px 10px; }

.rival, .unity { padding:12px 14px; display:flex; flex-direction:column; gap:8px; }
.rival { border-color:rgba(255,77,94,.35); }
.rival p, .rival small { font-size:13px; color:#c3c9de; line-height:1.6; }
.rbar { height:12px; border-radius:99px; background:rgba(255,255,255,.06); position:relative; overflow:hidden; }
.rbar i { display:block; height:100%; background:linear-gradient(90deg,#ff4d5e,#ff8a5b); transition:width .4s; }
.rbar b { position:absolute; inset-inline-start:8px; top:-2px; font-size:11px; }
.unity .btn { margin:0; }
/* ===== שלב השלטון ===== */
.gv-h { display:flex; justify-content:space-between; align-items:baseline; gap:8px; margin-bottom:8px; }
.gv-h small { color:var(--mut); font-size:12px; }
.gv-term { padding:12px 14px; } .gv-term .meter { margin:4px 0 6px; }
.gv-kpi { display:grid; grid-template-columns:repeat(auto-fit,minmax(70px,1fr)); gap:8px; }
.gv-kpi .glass { padding:10px 6px; text-align:center; }
.gv-kpi .num { font-size:30px; display:block; line-height:1.1; } .gv-kpi .ok { color:var(--green); } .gv-kpi .bad { color:var(--red); }
.gv-kpi small { color:var(--mut); font-size:11.5px; line-height:1.3; display:block; }
.bad-t { color:#ff8a95; }
.gv-ev { padding:14px; } .gv-ev > p { color:#c9cfe4; font-size:14.5px; line-height:1.55; margin-top:6px; }
.gv-ch { display:flex; flex-direction:column; gap:8px; margin-top:12px; }
.btn.ch { text-align:right; display:flex; flex-direction:column; gap:6px; padding:12px 14px; border:1px solid var(--line); }
.btn.ch b { font-size:16px; }
.fx { display:flex; flex-wrap:wrap; gap:5px; }
.fx-c { font:600 12px 'Rubik'; padding:2px 8px; border-radius:99px; }
.fx-c.up { background:rgba(61,220,132,.14); color:var(--green); } .fx-c.down { background:rgba(255,77,94,.14); color:#ff8a95; }
.fx-c.pub { outline:1px solid rgba(255,255,255,.12); }
.fx-quiet { display:block; margin-top:4px; font:500 12px 'Rubik'; color:var(--mut); } .fx-quiet .up { color:var(--green); } .fx-quiet .down { color:#ff8a95; }
.fx-why { color:var(--mut); font:400 11.5px/1.45 'Rubik'; }
.gv-res { padding:12px 14px; display:flex; flex-direction:column; gap:5px; border-color:rgba(255,209,102,.35); }
.gv-res p { font-size:13.5px; line-height:1.45; } .gv-res .note { font-weight:600; }
.gv-sub { font:700 16px 'Rubik'; color:var(--mut); margin:6px 2px -4px; }
.gv-p .sat { position:relative; height:8px; border-radius:99px; background:rgba(255,255,255,.06); margin-top:8px; }
.gv-p .sat i { position:absolute; inset:0 0 0 auto; border-radius:99px; background:var(--c); }
.gv-p .sat span { position:absolute; left:0; top:-17px; font-size:12px; color:var(--mut); }
.gv-poll { padding:12px 14px; display:flex; flex-direction:column; gap:5px; }
.pl-row { display:grid; grid-template-columns:110px 1fr 28px 30px; align-items:center; gap:8px; font-size:13px; }
.pl-bar { height:8px; border-radius:99px; background:linear-gradient(90deg,var(--pc) var(--w),rgba(255,255,255,.05) var(--w)); }
.pl-row small { color:var(--mut); font-size:11.5px; }
.ticker.ok { background:#1d7a4a; }
.spark { width:100%; height:auto; display:block; }
details.whynot summary { cursor:pointer; font-weight:600; }
/* לוח משא ומתן קומפקטי במובייל */
.s-neg .rec p { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; margin-top:4px; }
.rec.party.mini { padding:7px 10px; }
.rec.party.mini p { -webkit-line-clamp:3; font-size:12.5px; }
.recs.mini { gap:6px; margin-top:8px; }
.probs .prob { text-align:right; background:none; border:0; color:#c3c9de; font:inherit; font-size:13.5px; line-height:1.5; cursor:pointer; padding:0; }
.probs .prob u { color:var(--gold); text-decoration:none; white-space:nowrap; }
/* מקום לתג של קמריו בפינה התחתונה, כדי שלא יכסה כפתורים */
.screen { padding-bottom:calc(150px + env(safe-area-inset-bottom)); }
.spark text { fill:#8b93ad; font-size:10px; font-family:Rubik, sans-serif; }
/* אופוזיציה */
.s-opp .btn.ch.gold small { color:#3a2a00; }
.pl-row.me span:first-child { color:var(--gold); font-weight:700; }
.opp-cta { padding:14px; } .opp-cta p { color:#c3c9de; font-size:14px; line-height:1.55; margin:6px 0 10px; }
.s-opp .whynot .chip { margin:2px 0; }
/* אופוזיציה: פירוק מפילים / ממשלה חלופית */
.s-opp .two-col { display: grid; grid-template-columns: 1fr; gap: 10px; margin-top: 8px; }
@media (min-width: 700px) { .s-opp .two-col { grid-template-columns: 1fr 1fr; } }
.s-opp .why-row { margin: 4px 0; font-size: 13px; line-height: 1.35; }
.s-opp .why-row small { color: var(--muted, #8b93ad); }
.s-opp .num-line { font-size: 13px; }
/* חדר ההצעות */
.offer .o-lines { margin:6px 0; padding-inline-start:18px; font-size:14px; line-height:1.5; color:#d5dbef; }
.offer .o-btns { display:flex; flex-wrap:wrap; gap:6px; margin:6px 0; }
.offer .o-btns .btn { flex:1 1 auto; font-size:13px; padding:8px 10px; }
.offer > .btn.gold { width:100%; }
details.sumcards > summary { cursor:pointer; font-weight:600; padding:4px 0; }

/* ===== v2 שידור: מסגרת, מד 61, רגעי מפתח (js/fx.js) ===== */
#bc { position:fixed; top:0; inset-inline:0; z-index:40; display:none; }
body.bc-on #bc { display:block; }
body.bc-on #app { padding-top:calc(48px + env(safe-area-inset-top)); padding-bottom:calc(116px + env(safe-area-inset-bottom)); }
html:has(body.bc-on) { scroll-padding-top:calc(60px + env(safe-area-inset-top)); scroll-padding-bottom:calc(60px + env(safe-area-inset-bottom)); }
/* תג קמריו: מעל הטיקר, והתוכן נגמר מעליו - לא מכסה כלום */
body.bc-on .kmr-pill.kmr-bl { bottom:calc(44px + env(safe-area-inset-bottom)) !important; }
body.bc-on.bc-meter-on #app { padding-top:calc(100px + env(safe-area-inset-top)); }
.bc-top { display:flex; align-items:center; gap:10px; height:38px; padding:env(safe-area-inset-top) 12px 0; background:linear-gradient(180deg,#0b1430,#091022); border-bottom:2px solid var(--gold); font:600 13px 'Rubik'; box-shadow:0 6px 18px rgba(0,0,0,.45); }
.bc-live { display:inline-flex; align-items:center; gap:6px; background:#b3121f; color:#fff; padding:3px 8px; border-radius:6px; font-weight:700; font-size:12px; }
.bc-stage { color:var(--gold); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.bc-date { color:var(--mut); white-space:nowrap; }
.bc-seats { margin-inline-start:auto; font-size:13px; color:var(--mut); white-space:nowrap; }
.bc-seats b { font-size:20px; color:var(--ink); } .bc-seats b.ok, .m61 b.ok { color:var(--green); }
.bc-meter:empty { display:none; }
.bc-meter { padding:8px 12px 6px; background:rgba(7,11,22,.94); backdrop-filter:blur(8px); border-bottom:1px solid var(--line); }
.m61-bar { position:relative; display:flex; height:14px; border-radius:7px; overflow:hidden; background:#1a2440; }
.m61-bar i { background:var(--c); transition:flex .6s cubic-bezier(.2,.8,.2,1); border-inline-end:1px solid rgba(0,0,0,.35); }
.m61-bar i.ab { background:repeating-linear-gradient(45deg,var(--c) 0 4px,transparent 4px 8px); opacity:.7; }
.m61-bar i.rest { background:transparent; border:0; }
.m61-bar em { position:absolute; top:-2px; bottom:-2px; inset-inline-start:calc(61 / 120 * 100%); width:2px; background:var(--gold); box-shadow:0 0 6px var(--gold); }
.m61-l { display:flex; justify-content:space-between; align-items:center; gap:8px; margin-top:4px; font-size:11px; color:var(--mut); }
.m61-l span { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.m61-l span i { display:inline-block; width:8px; height:8px; border-radius:2px; background:var(--c); margin:0 4px 0 2px; }
.m61-l b { font-size:16px; color:var(--ink); }
#bt { position:fixed; bottom:0; inset-inline:0; z-index:40; display:none; height:calc(34px + env(safe-area-inset-bottom)); padding-bottom:env(safe-area-inset-bottom); background:#b3121f; color:#fff; font:600 14px 'Rubik'; align-items:center; overflow:hidden; box-shadow:0 -6px 18px rgba(0,0,0,.4); }
body.bc-on #bt { display:flex; }
#bt > b { flex:none; background:#fff; color:#b3121f; height:100%; display:flex; align-items:center; padding:0 12px; font-weight:800; }
.bt-run { flex:1; overflow:hidden; white-space:nowrap; }
.bt-in { display:inline-flex; gap:18px; padding-inline-start:18px; animation:tick 60s linear infinite; }
.bt-in i { font-style:normal; opacity:.6; font-size:9px; align-self:center; }
.bt-in.rm { animation:none; }
@keyframes tick { to { transform:translateX(50%); } }
/* פאנל צד: רק במחשב */
#side { display:none; }
@media (min-width:1024px) {
  body.bc-on #side { display:block; position:fixed; top:56px; bottom:52px; left:max(24px, calc(50% - 560px)); width:300px; overflow:auto; z-index:5; }
  body.bc-on #app { max-width:560px; margin-inline-start:max(16px, calc(50% - 560px)); margin-inline-end:auto; }
  body.bc-on.bc-meter-on #app { padding-top:60px; } body.bc-on .bc-meter { display:none; }
  .side-card { padding:16px; display:flex; flex-direction:column; gap:8px; }
  .side-card .m61 { margin-bottom:8px; } .side-h { color:var(--gold); font-family:'Secular One'; font-size:18px; }
  .side-card p { font-size:13px; line-height:1.5; color:#c3c9de; border-inline-start:2px solid var(--line); padding-inline-start:8px; }
}
/* טקסט ארוך */
.clamp { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.more { align-self:center; background:none; border:0; color:var(--gold); font:600 13px 'Rubik'; cursor:pointer; padding:2px 10px; text-decoration:underline; }
/* פגישה: משרדים כאריחים */
.ports.tiles { display:grid; grid-template-columns:repeat(3,1fr); gap:6px; }
.ports.tiles button { display:flex; flex-direction:column; align-items:center; gap:4px; padding:9px 4px; font-size:12px; line-height:1.2; min-height:64px; }
.ports.tiles button svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linejoin:round; stroke-linecap:round; opacity:.85; }
.ports.tiles button.big4 { grid-column:span 1; min-height:78px; font-size:14px; font-weight:700; border-color:rgba(255,209,102,.45); background:linear-gradient(180deg,rgba(255,209,102,.12),rgba(255,209,102,.03)); color:#ffe6a6; }
.ports.tiles button.big4 svg { width:28px; height:28px; }
.ports.tiles button.want { box-shadow:inset 0 0 0 1px rgba(61,220,132,.5); }
.ports.tiles button.on { background:linear-gradient(180deg,#ffe08f,#ffc43d); color:#1a1300; border-color:#ffc43d; }
@media (min-width:380px) { .ports.tiles { grid-template-columns:repeat(4,1fr); } .ports.tiles button.big4 { grid-column:span 2; flex-direction:row; justify-content:center; } }
/* גיבורי סיום */
.mandate.hero .face { box-shadow:0 0 0 3px var(--gold), 0 10px 40px rgba(255,209,102,.25); border-radius:50%; }
.end-elections.hero .face { box-shadow:0 0 0 3px var(--red), 0 10px 40px rgba(255,77,94,.3); }
.share-top { border:1px solid var(--gold); color:var(--gold); background:rgba(255,209,102,.08); }

/* ===== רגעי מפתח במסך מלא ===== */
#fx { position:fixed; inset:0; z-index:100; pointer-events:none; }
#fx:empty { display:none; }
.fx-card { --fc:var(--gold); position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; overflow:hidden;
  background:radial-gradient(ellipse at 50% 40%, rgba(12,18,36,.94), rgba(3,5,12,.97)); animation:fxin .18s ease-out both, fxout .25s ease-in calc(var(--dur) - .25s) forwards; }
.fx-gold { --fc:var(--gold); } .fx-green { --fc:var(--green); } .fx-red { --fc:#e01b2c; }
.fx-wipe { position:absolute; inset:0; background:linear-gradient(100deg, transparent 30%, var(--fc) 30% 70%, transparent 70%); opacity:.22; transform:translateX(120%); animation:wipe .7s cubic-bezier(.6,0,.2,1) both; }
.fx-sign .fx-wipe { opacity:.55; }
.fx-band { position:absolute; top:calc(14% + env(safe-area-inset-top)); inset-inline:0; display:flex; justify-content:center; align-items:center; gap:8px; padding:8px; background:var(--fc); color:#fff; font:800 16px 'Rubik'; letter-spacing:.3px; text-shadow:0 1px 2px rgba(0,0,0,.4); transform:scaleX(0); animation:band .35s .05s cubic-bezier(.2,.8,.2,1) both; }
.fx-gold .fx-band { color:#1a1300; text-shadow:none; }
.fx-body { position:relative; display:flex; flex-direction:column; align-items:center; gap:6px; text-align:center; padding:0 20px; margin-top:40px; }
.fx-face { animation:pop .45s .12s cubic-bezier(.2,1.4,.4,1) both; }
.fx-face .face, .fx-face .mono { box-shadow:0 0 0 4px var(--fc), 0 0 50px var(--fc); border-radius:50%; }
.fx-title { font:400 38px/1.1 'Secular One',sans-serif; color:#fff; animation:up .35s .2s ease-out both; text-shadow:0 2px 18px rgba(0,0,0,.6); }
.fx-sub { color:#c3c9de; font-size:17px; animation:up .35s .28s ease-out both; }
.fx-big { font-size:84px; line-height:1; color:var(--fc); animation:pop .4s .3s cubic-bezier(.2,1.4,.4,1) both; text-shadow:0 0 30px color-mix(in srgb, var(--fc) 50%, transparent); }
.fx-bs { color:var(--mut); font-size:14px; animation:up .3s .35s both; }
.fx-bar { position:relative; width:min(320px,80vw); height:16px; border-radius:8px; background:#1a2440; margin-top:10px; overflow:visible; }
.fx-bar i { position:absolute; inset-block:0; inset-inline-start:0; width:var(--w); border-radius:8px; background:var(--fc); animation:fill calc(var(--dur) * .6) .15s cubic-bezier(.2,.8,.2,1) both; }
.fx-bar em { position:absolute; top:-5px; bottom:-5px; inset-inline-start:calc(61 / 120 * 100%); width:3px; background:var(--gold); box-shadow:0 0 8px var(--gold); }
.fx-bar span { position:absolute; top:20px; inset-inline-start:calc(61 / 120 * 100% - 8px); font:800 13px 'Heebo'; color:var(--gold); }
.fx-stamp { position:absolute; top:-18px; inset-inline-end:-6px; border:4px solid var(--fc); color:var(--fc); font:400 30px 'Secular One'; padding:2px 14px; border-radius:10px; transform:rotate(-14deg); animation:stamp .3s .55s cubic-bezier(.3,1.6,.5,1) both; background:rgba(0,0,0,.35); }
.fx-fall .fx-title { font-size:44px; color:#ff6b78; }
.fx-skip { position:absolute; bottom:calc(24px + env(safe-area-inset-bottom)); color:var(--mut); font-size:12px; opacity:.7; }
@keyframes fxin { from { opacity:0; } } @keyframes fxout { to { opacity:0; } }
@keyframes wipe { to { transform:translateX(0); } }
@keyframes band { to { transform:scaleX(1); } }
@keyframes pop { from { opacity:0; transform:scale(.4); } }
@keyframes up { from { opacity:0; transform:translateY(14px); } }
@keyframes fill { from { width:0; } }
@keyframes stamp { from { opacity:0; transform:rotate(-14deg) scale(2.4); } }
.fx-card.rm, .fx-card.rm * { animation:none !important; transform:none; }
.fx-card.rm .fx-stamp { transform:rotate(-14deg); } .fx-card.rm .fx-wipe { transform:none; }
@media (prefers-reduced-motion: reduce) { .bt-in, .m61-bar i { animation:none; transition:none; } }
@media (min-width:1024px) { .fx-title { font-size:56px; } .fx-big { font-size:120px; } }
.fx-big { direction:ltr; unicode-bidi:isolate; }
/* v3: מליאה לפי הצבעה במסך ההשבעה */
.vote-hemi { margin-top:4px; }
.vh-legend { display:flex; justify-content:center; gap:14px; font:600 12.5px 'Rubik'; color:var(--mut, #9aa3b8); margin:4px 0 8px; }
.vh-legend i { display:inline-block; width:10px; height:10px; border-radius:50%; background:var(--c); margin-inline-end:5px; vertical-align:-1px; }
.vh-rows { display:grid; grid-template-columns:1fr 1fr; gap:4px 10px; }
.vh-row { display:flex; align-items:center; gap:6px; font:500 13px 'Rubik'; min-width:0; padding:3px 0; border-bottom:1px solid rgba(255,255,255,.06); }
.vh-row > i { flex:none; width:4px; height:16px; border-radius:2px; background:var(--pc); }
.vh-row span { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.vh-row b { font-size:13px; }
.vh-row em { font-style:normal; font-size:11.5px; font-weight:700; width:38px; text-align:end; }
.vh-row.v-yes em { color:#2ecc71; } .vh-row.v-no em { color:#ff4d5e; } .vh-row.v-abst em { color:#8a93a8; }
.sd-num { display:flex; align-items:baseline; gap:8px; } .sd-num b { font-size:40px; } .sd-num small { color:#9aa3b8; }
.side-card p.sd-parties, .side-card p.sd-due { border:0; padding:0; }
.sd-parties i { display:inline-block; width:8px; height:8px; border-radius:50%; background:var(--c); margin:0 6px 0 4px; }
.side-card:empty { display:none; }
@media (min-width:900px) { body.bc-on.side-empty #side { display:none; } body.bc-on.side-empty #app { margin-inline:auto; } }
/* r21: primary buttons never land under the fixed ticker / Kamario badge when scrolled into view */
html { scroll-padding-top:calc(110px + env(safe-area-inset-top)); scroll-padding-bottom:calc(150px + env(safe-area-inset-bottom)); }
#app button, #app .btn, #app [data-go] { scroll-margin-top:calc(110px + env(safe-area-inset-top)); scroll-margin-bottom:calc(150px + env(safe-area-inset-bottom)); }
#bt { z-index:40; pointer-events:none; } /* decorative: taps fall through to the button beneath */
.cab-th { font:600 11.5px 'Rubik'; color:var(--mut); letter-spacing:.02em; border-inline-start-color:transparent; padding-block:6px; background:rgba(255,255,255,.03); }
.cab-row:nth-child(odd):not(.cab-th):not(.pm) { background:rgba(255,255,255,.025); }
.cab-row > span:last-child, .cab-row > .chip { justify-self:end; }
/* r23: תיק שהשר שלו עוד לא מאומת - מוצג כמינוי פתוח, לא כשם חסר */
.cab-who.tbd { font:500 12.5px 'Rubik'; color:color-mix(in srgb, var(--pc) 55%, #c9cfe0); letter-spacing:.01em; }
.cab-who.tbd::before { content:''; width:8px; height:8px; border-radius:50%; border:2px solid var(--pc); flex:none; }
/* r23: מנדט חוזר = טוסט קומפקטי; רמז דילוג קריא */
.fx-skip { color:#e8ebf5; opacity:1; font:600 13px 'Rubik'; background:rgba(0,0,0,.55); padding:5px 12px; border-radius:99px; border:1px solid rgba(255,255,255,.25); }
.fx-toast { position:absolute; top:calc(64px + env(safe-area-inset-top)); inset-inline:12px; margin:auto; max-width:420px; display:flex; align-items:center; gap:10px; padding:10px 14px; border-radius:14px;
  background:rgba(10,14,28,.95); border:1px solid var(--fc, var(--gold)); box-shadow:0 8px 30px rgba(0,0,0,.5); color:#fff; animation:fxin .18s ease-out both, fxout .25s ease-in calc(var(--dur) - .25s) forwards; }
.fx-toast b { font:400 17px 'Secular One'; } .fx-toast small { color:#c3c9de; font-size:13px; display:block; }
.fx-toast .face, .fx-toast .mono { flex:none; }
/* r23: טבלת השרים מחכה שגרפיקת האמון תיעלם */
body.fx-hold .s-swear .cab { opacity:0; }
.s-swear .cab { transition:opacity .35s ease-out; }
/* r25: כותרת דביקה יורדת מתחת לפס השידור הקבוע, כדי שלא תוסתר */
body.bc-on .neg-top { top:calc(54px + env(safe-area-inset-top)); }
body.bc-on.bc-meter-on .neg-top { top:calc(106px + env(safe-area-inset-top)); }
@media (min-width:900px) { body.bc-on.bc-meter-on .neg-top { top:66px; } }
html:has(body.bc-on.bc-meter-on) { scroll-padding-top:calc(110px + env(safe-area-inset-top)); }
@media (min-width:900px) { html:has(body.bc-on.bc-meter-on) { scroll-padding-top:70px; } }

/* r28: no ticker band over the swear cabinet table */
body.bt-off #bt { display:none !important; }
.nudge { border:1px solid rgba(255,209,102,.45); background:rgba(255,209,102,.07); }
.nudge b { color:var(--gold); display:block; margin-bottom:4px; }
.nudge p { margin:0; font-size:14px; }

/* ===== v5: מערכת כרטיסים אחת + חדר בקרה ===== */
:root { --radius:16px; --mut:#a3abc4; --body:#d3d8ea; }
.glass { border-radius:var(--radius); border:1px solid var(--line); }
.btn { border-radius:12px; } .btn.ghost { color:#c3c9de; }
.rec p, .probs p, .whynot p, .brief, .offer, .reply, .gv-res p, .gv-ev > p, .kick { color:var(--body); }
.src, .fine, .m-kicker, .gv-h small, .gv-kpi small { color:var(--mut); }
.gv-sub { color:var(--mut); font:700 13px 'Rubik'; letter-spacing:.06em; border-inline-start:3px solid var(--gold); padding-inline-start:8px; margin:6px 0 -4px; }
.clamp1 { display:-webkit-box; -webkit-line-clamp:1; -webkit-box-orient:vertical; overflow:hidden; }
/* פס כותרת תחתון (lower third) */
.strap { display:flex; flex-direction:column; align-items:flex-start; margin:-14px -14px 10px; border-radius:var(--radius) var(--radius) 0 0; overflow:hidden; }
.strap-k { background:#b3121f; color:#fff; font:700 12px 'Rubik'; padding:4px 12px; letter-spacing:.04em; border-end-start-radius:0; }
.strap-t { display:block; width:100%; background:linear-gradient(90deg, rgba(255,209,102,.04), rgba(255,209,102,.16)); border-bottom:2px solid var(--gold); color:#fff; font:400 22px/1.25 'Secular One'; padding:8px 14px 9px; }
.strap.sm { margin:-12px -14px 8px; } .strap.sm .strap-t { font-size:17px; }
.strap.lead { margin:0; border-radius:12px; } .strap.lead .strap-t { font-size:20px; }
.strap.lt { margin:8px 0 0; border-radius:10px; } .strap.lt.bad .strap-k { background:#b3121f; } .strap.lt.ok .strap-k { background:#1d7a4a; }
.strap.lt .strap-t { font-size:19px; text-align:center; }
/* לוח בקרה: מד 61 + מדדים */
.dash { padding:12px 14px; display:flex; flex-direction:column; gap:10px; }
.dash-top { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.dash-61 { display:flex; align-items:baseline; gap:4px; flex-wrap:wrap; max-width:46%; }
.dash-61 b { font-size:46px; line-height:.9; } .dash-61 > span { color:var(--mut); font:800 20px 'Heebo'; }
.dash-61 small { width:100%; color:var(--body); font-size:12px; }
.dash .ok { color:var(--green); } .dash .bad { color:var(--red); }
.dash-kpi { display:flex; gap:6px; }
.dash-kpi span { display:flex; flex-direction:column; align-items:center; min-width:58px; padding:6px 6px; border-radius:10px; background:rgba(255,255,255,.04); border:1px solid var(--line); }
.dash-kpi b { font-size:22px; line-height:1.1; } .dash-kpi small { color:var(--mut); font-size:10.5px; text-align:center; line-height:1.2; }
.m61b { position:relative; height:14px; border-radius:99px; background:rgba(255,255,255,.07); overflow:hidden; }
.m61b i { position:absolute; inset:0 0 0 auto; background:linear-gradient(270deg,#3ddc84,#2bb673); border-radius:99px; transition:width .5s; }
.m61b.red i { background:linear-gradient(270deg,#ff6b78,#d93848); }
.m61b em { position:absolute; top:-2px; bottom:-2px; right:50.83%; width:3px; background:var(--gold); box-shadow:0 0 8px var(--gold); }
.dash-term { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:8px; } .dash-term small { color:var(--mut); font-size:11.5px; }
.dash-term .meter { height:5px; }
/* שבבי מפלגות עם מצב שביעות רצון */
.pchips { display:grid; grid-template-columns:1fr; gap:6px; }
.pchip { display:grid; grid-template-columns:auto 1fr auto auto; grid-template-rows:auto auto; align-items:center; column-gap:10px; row-gap:4px; padding:8px 12px;
  background:linear-gradient(180deg, rgba(22,33,60,.85), rgba(17,26,48,.8)); border:1px solid var(--line); border-inline-start:4px solid var(--pc); border-radius:12px; }
.pchip .face { grid-row:1 / 3; }
.pc-n { min-width:0; display:flex; flex-direction:column; } .pc-n b { font-size:15px; } .pc-n small { color:var(--body); font-size:12px; }
.pc-s { font-size:20px; } .pc-s small { color:var(--red); font-size:11px; margin-inline-start:2px; }
.pc-m { display:inline-flex; align-items:center; gap:4px; font:700 13px 'Rubik'; padding:3px 8px; border-radius:99px; background:var(--mc-bg); color:var(--mc); }
.pc-m i { font-style:normal; }
.pc-bar { grid-column:2 / 4; height:4px; border-radius:99px; background:rgba(255,255,255,.07); position:relative; overflow:hidden; }
.pc-bar i { position:absolute; inset:0 0 0 auto; background:var(--mc); }
.pc-t { grid-column:4; font-size:11px; color:var(--mc); text-align:center; white-space:nowrap; }
.pchip { --mc:var(--ink); --mc-bg:rgba(255,255,255,.08); }
.pchip.s-talk { --mc:#5fe39b; --mc-bg:rgba(61,220,132,.14); }
.pchip.s-outside, .pchip.s-unity { --mc:var(--gold); --mc-bg:rgba(255,209,102,.13); }
.pchip.s-refuse { --mc:#ff7a87; --mc-bg:rgba(255,77,94,.15); }
.pchip.out { opacity:.7; }
.ochips { display:flex; flex-wrap:wrap; gap:6px; }
.ochip { display:inline-flex; align-items:center; gap:6px; padding:5px 10px; border-radius:99px; background:rgba(255,255,255,.05); border:1px solid var(--line); font:600 13px 'Rubik'; }
.ochip i { width:9px; height:9px; border-radius:3px; background:var(--pc); } .ochip em { font-style:normal; font-size:11.5px; }
.ochip.s-talk { border-color:rgba(61,220,132,.5); } .ochip.s-talk em { color:#5fe39b; }
.ochip.s-refuse { border-color:rgba(255,77,94,.45); } .ochip.s-refuse em { color:#ff7a87; }
.gv-ev .clamp, .gv-ev > p { font-size:14.5px; }
/* מסכי סיום */
.end-hemi { display:flex; flex-direction:column; }
/* מבזק: בלי מילים חתוכות בקצוות */
.bt-run { -webkit-mask-image:linear-gradient(90deg, transparent, #000 28px, #000 calc(100% - 28px), transparent); mask-image:linear-gradient(90deg, transparent, #000 28px, #000 calc(100% - 28px), transparent); }
/* בית: אולפן */
.s-home { position:relative; }
.studio { display:none; }
body:has(.s-home) { background:
    radial-gradient(ellipse 60% 40% at 50% -5%, rgba(255,230,170,.22), transparent 70%),
    conic-gradient(from 200deg at 15% -10%, transparent 0 10deg, rgba(120,160,255,.10) 14deg, transparent 22deg),
    conic-gradient(from 140deg at 85% -10%, transparent 0 10deg, rgba(120,160,255,.10) 14deg, transparent 22deg),
    radial-gradient(ellipse 80% 30% at 50% 105%, rgba(29,111,242,.28), transparent 70%),
    repeating-linear-gradient(90deg, rgba(255,255,255,.035) 0 1px, transparent 1px 22px),
    repeating-linear-gradient(0deg, rgba(255,255,255,.025) 0 1px, transparent 1px 22px),
    linear-gradient(180deg, #0a1022, #05070f 70%); background-attachment:fixed; }
.home-hemi { padding:10px 10px 6px; }
.s-home { padding-top:4vh; }
/* מחשב: שתי עמודות, בלי ריק */
@media (min-width:1024px) {
  #app { max-width:1040px; }
  body.bc-on #app { max-width:680px; margin-inline-start:max(16px, calc(50% - 600px)); }
  body.bc-on #side { width:380px; left:max(24px, calc(50% - 600px)); }
  body.bc-on.side-empty #app { max-width:1040px; margin-inline:auto; }
  .s-home { display:grid; grid-template-columns:1fr 1fr; column-gap:32px; align-items:start; text-align:right; padding-top:60px; }
  .s-home > * { grid-column:1; } .s-home > .home-hemi, .s-home > .home-card { grid-column:2; } .s-home > .home-hemi { grid-row:1 / span 4; }
  .s-home .home-card { grid-row:5 / span 2; } .s-home > .home-steps { display:block; grid-column:2; grid-row:7 / span 3; margin-top:12px; } .s-home .home-top { justify-content:flex-start; } .s-home .logo { font-size:96px; }
  .pchips { grid-template-columns:1fr 1fr; }
  .leads { display:grid; grid-template-columns:1fr 1fr; }
  .s-results, .s-end, .s-leader, .s-consult { display:grid; grid-template-columns:1fr 1fr; column-gap:20px; align-items:start; }
  .s-results > *, .s-end > *, .s-leader > *, .s-consult > * { grid-column:1 / -1; }
  .s-results > .hemi-card, .s-end > .hero { grid-column:1; } .s-results > .hemi-card + *, .s-end > .end-hemi { grid-column:2; }
  .s-end > .end-hemi { align-self:stretch; display:flex; flex-direction:column; justify-content:center; }   /* r78: בלי חור מתחת לחצי העיגול כשהכרטיס הראשי גבוה */
}
@media (prefers-reduced-motion: reduce) { .m61b i { transition:none; } }
@media (min-width:1024px) { .hemi-card .hemi { max-width:460px; margin-inline:auto; } .opp-cta .fine, .gv-ev .fine { text-align:start; } }

/* r30: opposition KPI labels one short line each */
.dash-61 small, .dash-kpi small { white-space:nowrap; }
.dash-kpi span { min-width:64px; }
/* r30: short goal + expander */
.kick.goal p { margin:0; } .kick.goal p + p { color:var(--mut); font-size:13px; }
.kick.goal .howto summary { cursor:pointer; color:var(--gold); font-size:13px; margin-top:4px; }
.kick.goal .howto p { color:var(--body); font-size:13px; margin-top:4px; }
/* r30: ticker - whole words only, stronger fade */
.bt-in > span { white-space:nowrap; }
.bt-in.rm { flex-wrap:wrap; height:1.5em; overflow:hidden; }
.bt-run { -webkit-mask-image:linear-gradient(90deg, transparent, #000 44px, #000 calc(100% - 44px), transparent); mask-image:linear-gradient(90deg, transparent, #000 44px, #000 calc(100% - 44px), transparent); }
/* r30: end-screen votes */
.votes .vote { border-top:1px solid var(--line); padding-top:6px; margin-top:6px; }
.votes .v-head { display:flex; justify-content:space-between; gap:8px; margin:0; font-weight:700; }
.votes .vote.ok .v-head span { color:var(--green); } .votes .vote.bad .v-head span { color:var(--red); }
.votes .saved { color:var(--gold); }
.decide p { margin:4px 0; }
/* r30: side rail mood bars */
.sd-mood { display:grid; grid-template-columns:1fr 70px 28px; align-items:center; gap:8px; font-size:13px; margin:5px 0; }
.sd-bar { height:6px; border-radius:3px; background:rgba(255,255,255,.08); overflow:hidden; }
.sd-bar i { display:block; height:100%; background:var(--green); } .sd-bar i.mid { background:var(--gold); } .sd-bar i.bad { background:var(--red); }
.side-card p.ok { color:var(--green); } .side-card p.bad { color:var(--red); }
/* r30: ticker edge fades as overlays (work even when the marquee layer ignores mask) */
.bt-run { position:relative; align-self:stretch; display:flex; align-items:center; }
.bt-run::before, .bt-run::after { content:''; position:absolute; top:0; bottom:0; width:48px; z-index:2; pointer-events:none; }
.bt-run::before { inset-inline-start:0; background:linear-gradient(to left, #b3121f 20%, rgba(179,18,31,0)); }
.bt-run::after { inset-inline-end:0; background:linear-gradient(to right, #b3121f 20%, rgba(179,18,31,0)); }
.sd-mood > span:first-child i { display:inline-block; width:8px; height:8px; border-radius:50%; background:var(--c); margin-inline-end:6px; }
.votes { display:block !important; } .votes .vote { display:block; } .votes .vote p { display:block; }
/* r33: governing readability */
.clamp2 { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.fx-c.more { background:rgba(255,255,255,.06); color:var(--mut); }
.fx-more { margin-top:8px; font-size:13px; } .fx-more summary { cursor:pointer; color:var(--gold); font:600 13px 'Rubik'; }
.fx-full { margin:8px 0; } .quiet { color:var(--mut); font:400 13px/1.5 'Rubik'; margin:4px 0 0; }
.gv-side { display:flex; flex-wrap:wrap; gap:6px; margin:8px 0; } .gv-side .btn { flex:1 1 45%; font-size:13px; padding:8px; display:flex; flex-direction:column; gap:2px; }
.gv-side .btn small { color:var(--mut); font-size:11px; } .gv-side .btn.danger { border-color:rgba(255,77,94,.5); }
.good-t { color:var(--green); } 
/* r35: תקציב עובר/נופל - הבדל חזותי ברור */
.btn.ch.bud-pass { border-color:rgba(61,220,132,.55); background:rgba(61,220,132,.08); }
.btn.ch.bud-pass .odds { color:var(--green); }
.btn.ch.bud-fail { border-color:rgba(255,77,94,.65); background:rgba(255,77,94,.08); }
.btn.ch.bud-fail .odds { color:#ff8a95; font-weight:700; }
.btn.ch .warn-ic { color:#ff4d5e; }
.fx-c { white-space:nowrap; max-width:100%; overflow:hidden; text-overflow:ellipsis; }
.fx-maj { margin-top:10px; font:700 15px "Heebo"; color:var(--gold); }
/* r37: מד הסכמה בפגישה + הצעה מומלצת */
.accept-meter { margin-top:12px; padding:10px 12px; border-radius:12px; border:1px solid var(--line); display:grid; gap:4px; }
.accept-meter b { font-size:1.05rem; }
.accept-meter small { color:var(--mut); }
.accept-meter.ok { border-color:#3ddc97; background:rgba(61,220,151,.1); } .accept-meter.ok b { color:#3ddc97; }
.accept-meter.no { border-color:rgba(255,120,120,.5); background:rgba(255,120,120,.07); } .accept-meter.no b { color:#ff9a9a; }
.btn.rec-go { width:100%; display:grid; gap:2px; border:1px solid var(--gold); color:var(--gold); background:rgba(255,209,102,.08); }
.btn.rec-go small { color:var(--mut); font-weight:400; }
/* r37: מחשב - פריסה דו-טורית אמיתית: לוח+פגישה, דשבורד ממשלה, אופוזיציה */
@media (min-width:1024px) {
  body.bc-on #app { max-width:800px; margin-inline-start:max(16px, calc(50% - 616px)); }
  body.bc-on #side { width:330px; left:max(16px, calc(50% - 616px)); }
  .s-neg, .s-meet, .s-gov { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); column-gap:16px; align-items:start; grid-auto-flow:row dense; }
  .s-neg > *, .s-meet > *, .s-gov > * { grid-column:1 / -1; min-width:0; }
  .s-neg .recs { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
  .s-neg .recs.mini { grid-template-columns:1fr 1fr 1fr; }
  .s-neg > .draft, .s-neg > .stable-hint { grid-column:auto; }
  .s-meet > .brief, .s-meet > .reply { grid-column:1; }
  .s-meet > .offer, .s-meet > .btn { grid-column:2; }
  .s-meet > .offer { grid-row:span 6; }
  .s-meet .ports.tiles { grid-template-columns:repeat(4,1fr); }
  .s-gov > .gv-ev { grid-column:1; grid-row:span 3; }
  .s-gov > .gv-res, .s-gov > .gv-side { grid-column:2; }
  .s-gov > details.whynot { grid-column:1; }   /* r39: מצב הקואליציה ממלא את החצי התחתון מתחת לאירוע */
  .s-gov .gv-side { display:grid; gap:8px; }
  .s-opp > .route-box, .s-opp > .noconf-path, .s-opp > .recruit-box { grid-column:auto; }
}
.offer-act { position:sticky; bottom:44px; z-index:4; display:grid; gap:8px; padding:10px; background:rgba(10,16,34,.94); backdrop-filter:blur(8px); }
.offer-act .accept-meter { margin-top:0; }
@media (min-width:1024px) { .s-meet > .offer-act { grid-column:1; position:sticky; top:60px; bottom:auto; } .s-meet > .offer { grid-column:2; grid-row:span 8; } }
/* r41: הבחירה האסטרטגית */
.stable-hint .route-opt { border:1px solid rgba(255,255,255,.12); border-radius:12px; padding:10px 12px; margin:8px 0; }
.stable-hint .route-opt.rec { border-color: rgba(232,190,90,.7); background: rgba(232,190,90,.07); }
.stable-hint .route-opt p { margin:4px 0; }

/* r46: מבזק הנפילה - רצועה עליונה בלבד, נתוני הסיום גלויים מתחתיו; לא חוסם נגיעות */
.fx-card.fx-top { inset:0 0 auto 0; height:min(52vh,440px); border-bottom:3px solid var(--fc); }
.fx-card.fx-top .fx-face { display:none; } .fx-card.fx-top .fx-skip { display:none; }
/* r47: מהיר/מעמיק */
body:not(.deep) .dq { display:none !important; }
.mode-tg { display:flex; gap:6px; justify-content:center; margin:6px 0; }
.mode-tg button { flex:1; max-width:160px; }
.mode-tg button[aria-pressed="true"] { border-color:var(--gold); color:var(--gold); }
.mode-tg + .fine { text-align:center; margin-top:0; }
.fx-more.bg { text-align:start; }
/* r49: מחשב - בלי תוצאה/צד בטור השני, מצב הקואליציה עולה לצד האירוע (בלי חור ריק); הטיקר לא מכסה את כותרת הסיום */
@media (min-width:1024px) {
  .s-gov:not(:has(> .gv-res)):not(:has(> .gv-side)) > details.whynot { grid-column:2; grid-row:auto / span 3; }
  .s-end > .hero, .s-term > .hero { margin-top:44px; }
  .s-gov > details.whynot .pchips { grid-template-columns:1fr; }
}
/* r53: מבזק עליון אטום - בלי "רוח" של כותרת מסך הסיום מתחתיו בזמן ההופעה; רק התוכן נכנס ויוצא */
.fx-card.fx-top { background:linear-gradient(180deg, #0a1022, #05070f); animation:none; }
.fx-card.fx-top > .fx-band, .fx-card.fx-top > .fx-body { animation:fxin .18s ease-out both, fxout .25s ease-in calc(var(--dur) - .25s) forwards; }
/* ===== v7 visual pass ===== */
/* shared broadcast lower-third: full width, gold rule, tag >=14px */
.strap.lt3 { display:flex; flex-direction:column; align-items:stretch; width:auto; margin:0 0 10px; border-radius:12px; overflow:hidden; text-align:start; }
.strap.lt3.in { margin:-14px -14px 12px; border-radius:var(--radius) var(--radius) 0 0; }
.mandate > .strap.lt3.in, .hero > .strap.lt3.in { margin:-28px -18px 6px; align-self:stretch; }
.first-step > .strap.lt3.in { margin:-12px -14px 10px; }
.strap.lt3 .strap-k { align-self:flex-start; font:700 14px/1.2 'Rubik'; padding:5px 14px; letter-spacing:.02em; background:#b3121f; color:#fff; }
.strap.lt3.ok .strap-k { background:#1d7a4a; }
.strap.lt3 .strap-t { margin:0; width:100%; background:linear-gradient(90deg, rgba(255,209,102,.05), rgba(255,209,102,.18)); border-top:1px solid rgba(255,255,255,.06); border-bottom:2px solid var(--gold); color:#fff; font:400 21px/1.25 'Secular One'; padding:8px 14px 9px; }
.mandate > .strap.lt3 .strap-t, .first-step > .strap.lt3 .strap-t { font-size:18px; }
/* choice cards: party portraits instead of "+16" */
.fx-quiet.kfx { display:flex; flex-wrap:wrap; gap:6px; margin-top:6px; align-items:center; }
.kc { display:inline-flex; align-items:center; gap:2px; padding:2px 6px 2px 3px; border-radius:999px; background:rgba(255,255,255,.05); border:1px solid color-mix(in srgb, var(--pc, #8b93ad) 55%, transparent); }
.kc .face, .kc .mono { width:22px; height:22px; border-radius:50%; box-shadow:0 0 0 2px var(--pc); font-size:9px; object-fit:cover; }
.kc i { font-style:normal; font-size:11px; line-height:1; } .kc.up i { color:var(--green); } .kc.down i { color:#ff8a95; }
.kc-pub { font:600 11px 'Rubik'; color:var(--body, #c3c9de); padding-inline:4px; }
/* board: full-width meeting chips with portraits; one primary CTA (selected segment is not gold) */
.first-btns { display:flex; flex-direction:column; gap:8px; margin-top:8px; }
.btn.meet-chip { display:grid; grid-template-columns:auto 1fr auto auto; align-items:center; gap:10px; width:100%; padding:8px 12px; text-align:start; border-inline-start:4px solid var(--pc); background:rgba(255,255,255,.04); }
.meet-chip .face, .meet-chip .mono { border-radius:50%; box-shadow:0 0 0 2px var(--pc); }
.meet-chip .mc-n { display:flex; flex-direction:column; min-width:0; } .meet-chip .mc-n b { font:400 16px 'Secular One'; color:var(--ink); } .meet-chip .mc-n small { color:var(--mut); font-size:12px; }
.meet-chip .mc-s { font-size:22px; color:var(--ink); } .meet-chip .mc-go { font:600 13px 'Rubik'; color:var(--gold); }
.seg button.on { background:rgba(255,255,255,.12); border-color:rgba(255,255,255,.55); color:#fff; }
/* ticker: never cut - fades on both edges, padded label */
#bt .bt-run { flex:1; min-width:0; overflow:hidden; }
#bt .bt-run::before, #bt .bt-run::after { width:56px; }
/* leader picker: party branding */
.lead-card { position:relative; overflow:hidden; padding-inline-start:18px; }
.lead-card .lc-band { position:absolute; inset-block:0; inset-inline-start:0; width:8px; background:var(--pb); }
.lead-card .lc-logo::before { content:attr(data-l); }
.lead-card .lc-logo { flex-shrink:0; display:grid; place-items:center; width:30px; height:30px; border-radius:8px; background:var(--pb); color:var(--pk); font:400 17px 'Secular One'; box-shadow:0 0 0 1px rgba(255,255,255,.18); order:3; margin-inline-start:auto; }
.lead-card { border-inline-start:0; background:linear-gradient(90deg, rgba(255,255,255,0) 55%, color-mix(in srgb, var(--pb) 16%, transparent)); }
.lead-txt small.roles { color:#e9c46a; }
/* fall: stamp sits above the title, not on it; 2x2 tiles */
.fx-card.fx-top .fx-stamp { position:static; order:-1; transform:rotate(-5deg); font-size:24px; padding:0 12px; margin:0 0 6px; }
.fx-card.fx-top .fx-body { margin-top:28px; }
.s-term .gv-kpi:not(.bud-tiles) { grid-template-columns:1fr 1fr; }
.s-term .gv-kpi:not(.bud-tiles) .num { font-size:34px; }
@media (min-width:700px) { .s-term .gv-kpi:not(.bud-tiles) { grid-template-columns:repeat(4,1fr); } }
/* govern: desktop-only status card (mobile keeps the collapsible) */
.gv-stat { display:none; }
@media (min-width:1024px) {
  body::before { background: radial-gradient(closest-side at 70% 8%, rgba(37,99,235,.28), transparent 70%), radial-gradient(closest-side at 92% 70%, rgba(168,85,247,.10), transparent 70%); }
  .s-gov { grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); }
  .s-gov > .gv-ev { grid-column:1; grid-row:auto / span 4; }
  .s-gov > .gv-res, .s-gov > .gv-side, .s-gov > .gv-stat { grid-column:2; }
  .s-gov > .gv-stat { display:block; padding:12px 14px; }
  .s-gov > .gv-stat .hemi { max-width:min(100%, 330px); margin:0 auto; display:block; }   /* r80: חצי עיגול קטן יותר - העמודות מאוזנות */
  .s-gov > .gv-ev { align-self:stretch; display:flex; flex-direction:column; }
  .s-gov > .gv-ev > .gv-ch { flex:0 0 auto; }
  .s-gov > .gv-stat .fine { margin:4px 0 0; }
  .s-gov > details.whynot, .s-gov:not(:has(> .gv-res)):not(:has(> .gv-side)) > details.whynot { grid-column:1 / -1; grid-row:auto; }
  .s-gov .gv-side { margin:0 0 12px; }
}
.gv-stat .gv-h2 { margin-top:12px; padding-top:10px; border-top:1px solid var(--line); }
.gv-stat .hemi { max-height:190px; }
.first-step { overflow:hidden; }
.first-step > .strap.lt3.in { margin:calc(-1 * var(--gp, 14px)) calc(-1 * var(--gp, 14px)) 10px; }
.nudge .strap-k { color:#fff; display:inline-block; margin:0; }
#bt > b { padding-inline-end:10px; position:relative; z-index:3; }

/* r58: הישגי האופוזיציה כאריחים; הנימוק המשפטי מאחורי הרחבה */
.win-tiles { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:8px; }
.opp-wins .win-tile { margin:0; padding:10px; border-radius:12px; background:rgba(46,204,113,.08); border:1px solid rgba(46,204,113,.25); font-weight:600; line-height:1.35; }
.mandate .legal { margin-top:8px; text-align:start; } .mandate .legal summary { color:var(--mut); font-size:13px; cursor:pointer; }
.alt-track p { margin:4px 0; } .alt-track .good { color:#7fe0a5; }
/* r65: מילה קטנה ליד החץ + תג "מומלץ" */
.kc .kc-t { font:500 10px 'Heebo'; font-style:normal; color:var(--body, #c3c9de); margin-inline-start:1px; }
.kc.up .kc-t { color:var(--green); } .kc.down .kc-t { color:#ff8a95; }
.btn.ch .rec-tag { align-self:flex-start; width:auto; flex:0 0 auto; display:inline-block; font:700 10px 'Rubik'; color:#1a1300; background:var(--gold, #ffd166); border-radius:999px; padding:1px 7px; margin-inline-end:6px; vertical-align:middle; }
/* r68: סוף קדנציה במחשב - אין חצי עיגול בעמודה השנייה, אז המבזק במרכז ולא חצי מסך ריק */
@media (min-width:1024px) { .s-term > .hero { grid-column:1 / -1; justify-self:center; width:100%; max-width:640px; } }
.gv-levers { padding:8px 12px; margin-top:8px; } .gv-levers summary { cursor:pointer; color:var(--gold); font-weight:700; font-size:14px; } .gv-levers .gv-side { margin-top:8px; }
.partner-win { margin:10px auto 0; padding:10px 14px; border:1px solid var(--gold); color:#fff; font-size:15px; text-align:center; max-width:560px; } .partner-win b { color:var(--gold); }
.sigs .sig{margin:6px 0}.sigs .sig-btns{display:flex;gap:6px;flex-wrap:wrap}.sigs .sig .btn.small{padding:4px 10px;font-size:13px;min-height:0;width:auto;display:inline-block;margin:2px 0 6px}
/* r76: תומכים / מתנגדים מקובצים */
.kc-grp { display:inline-flex; align-items:center; gap:4px; flex-wrap:wrap; }
.kc-grp i { font-style:normal; font-size:11px; } .kc-grp.up i, .kc-grp.up .kc-t { color:var(--green); } .kc-grp.down i, .kc-grp.down .kc-t { color:#ff8a95; }
.kc-grp .kc-t { font:500 11px 'Heebo'; font-style:normal; }
.kc-grp .kc { padding:2px; }
body:not(.deep) .gv-ev .ev-lead{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden} /* r85: מצב מהיר - עד 2 שורות */
/* r87: באנר "ממוצע סקרים - לא תוצאות" */
.poll-banner { border:2px solid var(--gold); background:rgba(255,209,102,.1); text-align:center; padding:12px 14px; }
.poll-banner b { display:block; color:var(--gold); font:800 20px 'Rubik', sans-serif; margin-bottom:4px; }
/* r87: שורת חתימה קומפקטית - שבב, מנדטים, דרישה בשורה אחת, סטטוס, שני כפתורי אייקון */
.sigs .sig-row{margin:4px 0;border-bottom:1px solid rgba(255,255,255,.06);padding-bottom:4px}
.sigs .sig-line{display:flex;align-items:center;gap:6px;min-width:0}
.sigs .sig-n{font-weight:700;color:var(--gold);flex:none}
.sigs .sig-dem{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px;opacity:.85}
.sigs .sig-st{flex:none;font-size:12px;opacity:.7}
.sigs .btn.icon{flex:none;width:36px;height:36px;min-height:0;padding:0;margin:0;font-size:17px;display:inline-flex;align-items:center;justify-content:center}
.sigs .sig-more summary{font-size:12px;opacity:.7;cursor:pointer}
.sigs .sig-legend{margin-top:6px}
/* r89: עמודות משותפות לרשימת המנדטים (subgrid) - כל הפסים מתחילים מאותו קצה; סיכום גושים מול 61; "הדרכים ל-61" מיושר לימין */
.s-results .seats-list, .bloc-sum .bs-list { display:grid; grid-template-columns:max-content 1fr 28px; column-gap:10px; row-gap:6px; }
.s-results .seats-list > .row, .bloc-sum .bs-row { grid-column:1 / -1; display:grid; grid-template-columns:subgrid; gap:0 10px; }
.bloc-sum { padding:12px 14px; display:flex; flex-direction:column; gap:8px; text-align:right; }
.bs-name { font-size:13.5px; color:var(--body, #c3c9de); white-space:nowrap; }
.bs-bar { height:8px; border-radius:99px; background:rgba(255,255,255,.06); position:relative; }
.bs-bar::after { content:''; position:absolute; inset:0 0 0 auto; width:var(--w); background:rgba(200,208,230,.55); border-radius:99px; }
.bs-bar::before { content:''; position:absolute; top:-4px; bottom:-4px; right:var(--m); border-right:2px dashed var(--gold, #ffd166); z-index:1; }
.s-results .whynot, .s-results .whynot p, .s-results .route-c { text-align:right; }
.s-results > .stage { justify-self:start; width:max-content; max-width:100%; }
.bloc-sum p, .bloc-sum .fine { text-align:right; }
/* r91: כל שלב נראה אחרת - מדגם ענבר, ספירה חיה עם %, סופי ירוק-זהב בלי פעימה */
.stage.exit { background:rgba(255,176,32,.14); border-color:rgba(255,176,32,.45); color:#ffb020; }
.stage.exit .live-dot { background:#ffb020; animation:none; }
.stage.final { background:linear-gradient(90deg,rgba(61,220,132,.16),rgba(255,209,102,.16)); border-color:rgba(255,209,102,.5); }
.stage.final .live-dot { background:var(--gold); animation:none; box-shadow:none; }
.s-results .stage-note { font:600 12.5px 'Rubik'; margin:-4px 0 0; display:flex; align-items:center; gap:6px; }
.stage-note.exit { color:#ffb020; } .stage-note.final { color:var(--gold); }
.count-prog { display:flex; flex-direction:column; gap:4px; }
.count-prog .cp-bar { height:6px; border-radius:99px; background:rgba(255,255,255,.08); position:relative; overflow:hidden; }
.count-prog .cp-bar::after { content:''; position:absolute; inset:0 0 0 auto; width:var(--w); background:var(--red); border-radius:99px; }
.s-results .routes .route-c > summary { list-style:none; cursor:pointer; font-size:13.5px; padding:6px 0; border-top:1px solid rgba(255,255,255,.06); white-space:normal; overflow-wrap:anywhere; }
.s-results .routes .route-c > summary::after { content:' ▾'; opacity:.5; }
.s-results .routes .route-c[open] > summary { white-space:normal; }
@media (max-width:700px) { .s-results:not(.s-round) .hemi-card .blocs { display:none; } .s-results:not(.s-round) .hemi-card { padding:8px 8px 6px; } }   /* r91: הגושים כבר בסיכום מול 61 */
.vchips { display:flex; flex-wrap:wrap; gap:6px; } .vchip { font:600 12.5px 'Rubik'; padding:3px 9px; border-radius:99px; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.1); } .vchip.sm { font-size:11.5px; opacity:.85; }
/* r93: כל המפלגות - מתקפל, אחרי הדרכים ל-61 */
.s-results .all-parties > summary { cursor:pointer; font-weight:700; padding:4px 0; }
.s-results .all-parties[open] > summary { margin-bottom:8px; }
.s-results .routes .r-line { color:inherit; opacity:.9; }
.s-term .m-name.pline { font-size:22px; line-height:1.25; }

/* r99: תג Kamario בפינה השמאלית התחתונה לא מכסה את הסבר המצב בבית (390) */
@media (max-width:720px) { .s-home .mode-note { padding-left:58px; padding-right:58px; } }
/* r101: מבזק בלי דיוקן (פיזור הכנסת) - החותמת מעל הכותרת ולא עליה; רקע אטום כדי שמסך הסיום לא ייראה מבעד */
.fx-card.fx-st { background:radial-gradient(ellipse at 50% 40%, #0c1224, #03050c); }
.fx-card.fx-st .fx-stamp { position:static; order:-1; transform:rotate(-5deg); font-size:26px; padding:0 12px; margin:0 0 8px; }

/* d2: בוטל ה-zoom לדסקטופ (r-read) - המסך גדול מדי וגולל. הסידור לדסקטופ בסוף css/simple.css */
