/* Shared phone layout, loaded after the desktop design layers. */
.mobile-menu-toggle,.mobile-map-nav,.mobile-map-pan,.mobile-polls-nav,.mobile-forecast-nav{display:none}
.mobile-disclosure{border:0;margin:0;padding:0;min-width:0}
.mobile-disclosure>summary{display:none}
.mobile-menu:not([open]){display:none}
.ec-mobile-total{display:none}
.gap-rec-mobile,.gap-rec-mobile-note{display:none}
@media (min-width:901px){.mobile-disclosure{display:contents}}
@media (max-width:900px){
  :root{--edge:16px;--mobile-header:64px}
  html{scroll-padding-top:calc(var(--masthead-h,64px) + 12px)}
  body{min-width:0}
  .view.on :is(article,section,aside,header,nav,figure,fieldset){min-width:0;box-sizing:border-box}
  .view.on :is(p,li,h2,h3,h4){overflow-wrap:break-word}
  .view.on :is(img,canvas){max-width:100%}
  .view.on :is(button,a,input,select,summary):focus-visible{outline:3px solid #bf923f;outline-offset:3px}
  #view-home{scroll-margin-top:var(--masthead-h,64px)}
  .view.on:not(#_):not(#__){height:auto;max-height:none;min-height:0;overflow:visible}
  .view:not(#_):not(#__)>.wrap{width:100%;max-width:none;padding-inline:var(--edge);box-sizing:border-box}
  .view:not(#_):not(#__) :is(.grid,.two,.three,.card,.sec,.dm-card){min-width:0}
  .view:not(#_):not(#__) :is(.page-head,.page-intro){padding-block:20px 16px;margin-bottom:16px;gap:10px;flex-wrap:wrap}
  .view:not(#_):not(#__) :is(.page-head,.page-intro) h2{font-size:1.6rem;line-height:1.25}
  .view:not(#_):not(#__) :is(.page-head,.page-intro) p{font-size:.9rem;line-height:1.6}
  .view:not(#_):not(#__) :is(.sec-head,.controls,.toolbar,.section-heading){flex-wrap:wrap;gap:10px;min-width:0}
  .view:not(#_):not(#__) :is(button,.btn,select,summary){touch-action:manipulation}
  .view:not(#_):not(#__) :is(.btn,.switch button,.subtab,.chip,select,.field input){min-height:44px}
  .view:not(#_):not(#__) :is(input:not([type=range]),select,textarea){font-size:16px;max-width:100%;box-sizing:border-box}
  .view:not(#_):not(#__) input[type=range]{min-height:40px;touch-action:pan-y}
  .view:not(#_):not(#__) .switch{max-width:100%;flex-wrap:wrap}
  .view:not(#_):not(#__) .sec{padding-block:16px;margin-block:0}
  .view:not(#_):not(#__) .tablewrap{max-width:100%;overflow:auto;overscroll-behavior-x:contain;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
  .view:not(#_):not(#__) .tablewrap table{min-width:max-content}
  .view:not(#_):not(#__) .tablewrap th:first-child{position:sticky;inset-inline-start:0;z-index:2;background:#f6f1e7}
  .view:not(#_):not(#__) .tablewrap td:first-child{position:sticky;inset-inline-start:0;z-index:1;background:#fdfbf6}
  .view:not(#_):not(#__) .tablewrap :is(th,td){padding:10px 12px;font-size:.83rem}
  .view:not(#_):not(#__) .tablewrap::after{content:'↔ החליקו לצדדים לצפייה בכל הנתונים';display:block;position:sticky;inset-inline-start:0;width:100%;box-sizing:border-box;padding:8px 12px;color:#586575;background:#f6f1e7;font-size:.73rem;text-align:center}
  .subtabs{flex-wrap:nowrap!important;overflow-x:auto;scrollbar-width:none;max-width:100%;padding-bottom:4px}
  .subtabs .subtab{flex:0 0 auto}
  [hidden]{display:none!important}

  /* A small, persistent header and a native modal menu. */
  .masthead{position:sticky;top:0;z-index:100}
  .masthead .masthead-in{height:64px;min-height:64px;display:flex!important;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px;width:100%;box-sizing:border-box}
  .masthead .brand{min-width:0;display:block;flex:0 1 auto}
  .masthead .brand-logo{width:156px!important;max-width:100%;height:auto!important;display:block}
  .masthead .brand-tag,.masthead .mainnav,.masthead .masthead-side{display:none!important}
  .mobile-menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:none;min-height:44px;padding:6px 12px;border:1px solid #e5c78355;border-radius:9px;background:#ffffff0a;color:#f6e7bd;font:700 .85rem var(--sans)}
  .mobile-menu-toggle>span{font-size:1.2rem}
  #mobile-menu.mobile-menu[open]{position:fixed;inset:0 0 0 auto;margin:0;width:min(350px,92vw);max-width:none;height:100dvh;max-height:100dvh;padding:20px 18px calc(20px + env(safe-area-inset-bottom));box-sizing:border-box;border:0;border-radius:16px 0 0 16px;background:#0d2034!important;color:#f6f3ec;overflow:auto;animation:mobile-menu-in .2s ease-out}
  dialog.mobile-menu::backdrop{background:#020b16b8;backdrop-filter:blur(3px)}
  .mobile-menu header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
  #mobile-menu h2{font-size:1.2rem;margin:0;color:#f6e7bd!important}
  .mobile-menu-close{width:44px;height:44px;border:1px solid #ffffff30;border-radius:50%;background:#ffffff0a;color:#fff;font-size:1.8rem;line-height:1}
  .mobile-menu nav{display:grid;gap:8px}
  #mobile-menu .mobile-menu-link{display:flex;align-items:center;min-height:52px;padding:10px 16px;border:1px solid #ffffff20;border-radius:10px;color:#dce5ef;font-weight:700;text-decoration:none;box-sizing:border-box}
  .mobile-menu .mobile-menu-link::after{content:'←';margin-inline-start:auto;color:#e5c783}
  #mobile-menu .mobile-menu-link[aria-current=page]{background:#e5c783;color:#14233a;border-color:#e5c783}
  .mobile-menu .mobile-menu-link[aria-current=page]::after{color:#14233a}
  .mobile-menu-update{font-size:.8rem;line-height:1.6;color:#b4c1ce;margin-top:20px}
  body:has(#mobile-menu[open]){overflow:hidden}
  .mobile-menu button.mobile-menu-link{width:100%;text-align:start;background:#ffffff08;font:700 .9rem var(--sans)}
  @keyframes mobile-menu-in{from{transform:translateX(100%)}to{transform:none}}

  /* Fold secondary controls, keeping selections and results intact. */
  .mobile-disclosure{border:1px solid #d3c9b7;border-radius:10px;background:#fdfbf6;color:#14233a;overflow:hidden}
  .mobile-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:46px;padding:10px 14px;box-sizing:border-box;list-style:none;font-size:.87rem;font-weight:800;cursor:pointer}
  .mobile-disclosure>summary::-webkit-details-marker{display:none}
  .mobile-disclosure>summary::after{content:'+';font-size:1.35rem;font-weight:500;line-height:1}
  .mobile-disclosure[open]>summary{border-bottom:1px solid #e6dfd1}
  .mobile-disclosure[open]>summary::after{content:'−'}
  .mobile-disclosure>.ex-pickers{padding:12px;box-sizing:border-box}

  /* Landing: content flows with the screen; no desktop viewport lock. */
  /* The first screen: the title over the night sky, the whole Knesset, then the
     scoreboard (one link to the forecast). The two actions start just below the fold. */
  #view-landing .election-cover{--hero-img:calc(100svh - var(--masthead-h,64px) - 111px);display:flex;flex-direction:column;height:auto!important;min-height:calc(100svh - var(--masthead-h,64px) + 181px)!important;padding:0;background:#091b30}
  #view-landing .cover-image{position:absolute;inset:0 0 auto!important;height:var(--hero-img)!important;background-size:170vw auto!important;background-position:11% 57%!important;background-repeat:no-repeat;opacity:1!important;z-index:-3;animation:none;-webkit-mask-image:linear-gradient(180deg,transparent 0,transparent 14%,#000 38%,#000 78%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,transparent 14%,#000 38%,#000 78%,transparent 100%)}
  #view-landing .election-cover::after{content:'';position:absolute;inset:0 0 auto!important;height:var(--hero-img)!important;z-index:-2;pointer-events:none;background:linear-gradient(180deg,#091b30e6 0,#091b3040 22%,#091b3000 40%,#091b3000 66%,#091b30 100%)!important}
  #view-landing .cover-inner{flex:1;display:flex!important;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:10px;min-height:0!important;padding:18px 16px 14px!important;box-sizing:border-box}
  #view-landing .cover-content{display:contents}
  #view-landing .cover-edition{order:1;font-size:.7rem}
  #view-landing #election-title{order:2;font-size:clamp(2.1rem,9.6vw,3rem);line-height:1.05;margin:0;text-shadow:0 2px 16px #020c1bcc}
  #view-landing .cover-tagline{display:none}
  #view-landing .cover-chart{order:4;position:relative;margin:auto 0 0;width:100%;max-width:none;padding:10px 14px 8px;box-sizing:border-box;border-radius:14px;transform:none;justify-self:auto;background:#0b1d33d9;backdrop-filter:blur(10px)}
  #view-landing .cover-gauges{max-width:100%}
  #view-landing .cover-score-head{padding:0 0 4px;border:0;font-size:.68rem}
  #view-landing .cover-score-pair{gap:12px;padding:0 0 8px}
  #view-landing .cover-score{display:flex;align-items:baseline;gap:8px;min-width:0}
  #view-landing .cover-score--left{justify-content:flex-end}
  #view-landing .cover-score strong{font-size:2.3rem;letter-spacing:-.03em}
  #view-landing .cover-score>span{font-size:.72rem;line-height:1.3;max-width:none}
  #view-landing .cover-score-scale{padding-bottom:18px}
  #view-landing .cover-score-bar{height:8px}
  #view-landing .cover-score-majority{top:-4px;padding-top:14px;font-size:.62rem}
  #view-landing .cover-score-majority::before{height:14px}
  #view-landing .cover-actions{order:5;display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin:0}
  #view-landing .cover-actions a{min-height:46px;display:flex;justify-content:flex-start;align-items:center;gap:12px;padding:8px 16px;box-sizing:border-box;font-size:.88rem}
  /* The update time and the countdown share one short line. */
  #view-landing .cover-updated{order:6;align-self:flex-start;margin:0;font-size:.7rem;line-height:22px;color:#a9b8c8}
  #view-landing .election-cover .election-countdown.hero-countdown{order:7;align-self:flex-end;width:auto;margin:-32px 0 0;padding:0;border:0;gap:8px;line-height:22px}
  #view-landing .election-cover .countdown-cells{gap:6px}
  #view-landing .election-cover .countdown-cells b{flex-direction:row;align-items:baseline;gap:3px;min-width:0}
  #view-landing .election-cover .countdown-cells .num{font-size:1rem}
  #view-landing .election-cover .countdown-cells em{font-size:.68rem}
  #view-landing .model-disclosure{order:8;margin:0;padding:6px 10px;font-size:.66rem;line-height:1.45}
  #view-landing .election-cover>.section-next{display:none}
  #view-landing .cover-credit{position:absolute;top:calc(var(--hero-img) - 66px);left:12px;padding:0;font-size:.56rem;color:#d5dfed99;z-index:1}
  /* "The numbers behind the headlines": three one-line rows, only what is needed. */
  #view-landing .home-discovery{padding-block:20px 22px}
  #view-landing .discovery-heading{margin-bottom:10px}
  #view-landing .discovery-heading .kicker,#view-landing .discovery-heading>p:last-child{display:none}
  #view-landing .discovery-heading h2{font-size:1.2rem;line-height:1.3;margin:0}
  #view-landing .discovery-controls{margin-bottom:10px;gap:6px}
  #view-landing .discovery-controls button{width:20px;height:5px}
  #view-landing .discovery-controls button[aria-pressed="true"]{width:34px}
  #view-landing .discovery-stories{grid-template-columns:minmax(0,1fr)!important;gap:8px}
  #view-landing .discovery-card{display:grid;grid-template-columns:minmax(58px,auto) minmax(0,1fr) 14px;grid-template-areas:"num eye arr" "num ttl arr";align-items:center;gap:1px 12px;min-height:0;padding:10px 12px;border-radius:10px}
  #view-landing .discovery-card:hover{transform:none}
  #view-landing .discovery-art,#view-landing .discovery-card p,#view-landing .discovery-source,#view-landing .discovery-link{display:none}
  #view-landing .discovery-number{grid-area:num;margin:0;font-size:1.45rem;line-height:1.1;text-align:center;white-space:nowrap}
  #view-landing .discovery-eyebrow{grid-area:eye;font-size:.66rem;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  #view-landing .discovery-card h3{grid-area:ttl;font-size:.86rem;line-height:1.35}
  #view-landing .discovery-card::after{content:'←';grid-area:arr;color:#8c5e0c;font-size:.95rem}

  /* Forecast: result first, compact party rows grouped by bloc below. */
  .mobile-forecast-nav{position:sticky;top:calc(var(--masthead-h,64px) - 1px);z-index:20;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:8px 12px;background:#0d2034;border-bottom:1px solid #ffffff20}
  .mobile-forecast-nav button{min-width:0;min-height:44px;padding:8px 2px;border:0;border-radius:8px;background:transparent;color:#cbd6e1;font:700 .8rem var(--sans);white-space:nowrap}
  .mobile-forecast-nav button[aria-pressed=true]{background:#e5c783;color:#14233a}
  #view-home[data-mobile-forecast]>.section-next,#view-home[data-mobile-forecast] .verdict>.section-next{display:none}
  #view-home[data-mobile-forecast=overview] :is(.fs-side,.election-coalition),
  #view-home[data-mobile-forecast=parties] :is(.election-copy,.election-visual,.home-method,.election-coalition),
  #view-home[data-mobile-forecast=coalition]>:is(.verdict,.home-method){display:none!important}
  #view-home[data-mobile-forecast=parties] .verdict-top{display:none}
  #view-home[data-mobile-forecast=parties] .fs-center{padding:0;gap:0}
  #view-home[data-mobile-forecast=parties] .home-forecast-controls{padding-top:0!important}
  #view-home:not(#_):not(#__).on>.verdict{min-height:0;height:auto;padding:0 0 20px}
  #view-home:not(#_):not(#__) .verdict>.wrap{padding-inline:16px}
  #view-home:not(#_):not(#__) .verdict .verdict-in{padding-top:14px}
  #view-home .edition-label{display:none}
  #view-home:not(#_):not(#__) .verdict .election-hero.fs-hero{display:flex;flex-direction:column;gap:18px;padding-top:12px}
  #view-home:not(#_):not(#__) .fs-center{order:-1;gap:16px;padding:4px 0 8px}
  #view-home:not(#_):not(#__) .fs-center .forecast-headline{font-size:1.5rem;max-width:28ch;line-height:1.3}
  #view-home:not(#_):not(#__) .fs-center .election-visual{gap:14px}
  #view-home:not(#_):not(#__) .fs-center .readout .rd{padding-inline:8px;gap:4px}
  #view-home:not(#_):not(#__) .fs-center .readout .rd b{font-size:2.1rem}
  #view-home:not(#_):not(#__) .fs-center .readout .rd .rd-lbl{font-size:.78rem}
  #view-home .fs-side{--ph:40px;--bc:#17457f;padding:14px;border:1px solid #dce1e6;border-top:3px solid var(--bc);border-radius:12px;background:#fff;gap:10px}
  #view-home .fs-left{--bc:#C0392B}
  #view-home .fs-head{gap:10px;padding-bottom:10px;border-bottom:1px solid #e6dfd1}
  #view-home .fs-total{font-size:2rem}
  #view-home .fs-head span{font-size:1rem}
  #view-home .fs-rows{gap:6px}
  #view-home .fs-row{min-height:58px;padding:6px 0;gap:10px;border-radius:8px}
  #view-home .fs-photo{border-width:2px;border-radius:10px}
  #view-home .fs-name{font-size:1rem;white-space:normal;line-height:1.25}
  #view-home .fs-leader{font-size:.76rem}
  #view-home .fs-n{font-size:1.55rem}
  #view-home .fs-bar{height:14px}
  #view-home .fs-left .fs-row,#view-home .fs-left .fs-head{direction:rtl}
  #view-home .fs-left .fs-name,#view-home .fs-left .fs-leader{text-align:start}
  #view-home:not(#_):not(#__) .home-forecast-controls{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;padding-top:16px!important}
  #view-home:not(#_):not(#__) .fs-center .home-forecast-controls{width:100%;margin-top:0;padding-bottom:0!important}
  #view-home .home-history-pick{width:100%;justify-content:center;flex-wrap:wrap}
  #view-home .home-history-pick select{flex:1;min-width:0}
  #view-home .fs-run{position:fixed;inset:var(--masthead-h,64px) 0 0;overflow:auto;align-content:center;padding:24px 0;z-index:99}
  #view-home .fs-run-box{max-width:360px;width:calc(100% - 40px)}
  #view-home .home-floor{min-height:0!important;height:auto!important;padding-block:24px!important}
  #view-home .home-story{height:auto!important;min-height:0!important}
  #view-home .board{height:auto!important;min-height:0!important}
  #view-home .board .wall{display:grid;grid-template-columns:minmax(0,1fr)!important;gap:14px}
  #view-home .board .board-summary{padding:14px}

  /* Coalition: a compact score stays by the choices. */
  #view-home .ec-panel{padding:16px;border-radius:12px}
  #view-home .ec-heading{display:grid;gap:10px}
  #view-home .ec-heading h2{font-size:1.65rem}
  #view-home .ec-content{display:grid;grid-template-columns:minmax(0,1fr)!important;gap:16px}
  #view-home .ec-map{max-height:160px}
  #view-home .ec-panel{overflow:visible}
  #view-home .election-coalition{scroll-margin-top:calc(var(--masthead-h,64px) + 66px)}
  #view-home .ec-heading{padding-bottom:12px;margin-bottom:12px}
  #view-home .ec-parties{grid-template-columns:minmax(0,1fr);gap:8px}
  #view-home .ec-party{display:grid;grid-template-columns:44px minmax(0,1fr) 40px;grid-template-rows:auto auto;align-items:center;column-gap:12px;min-height:66px;padding:8px 12px;border-radius:10px;text-align:start;box-sizing:border-box}
  #view-home .ec-party-image{grid-column:1;grid-row:1/3;width:44px;height:44px;aspect-ratio:auto;border-radius:50%;overflow:visible}
  #view-home .ec-party-image img{border-radius:50%}
  #view-home .ec-party-image::after{display:none}
  #view-home .ec-check{inset:auto -5px -3px auto;width:20px;height:20px;line-height:18px;box-sizing:border-box;background:#fdfbf6}
  #view-home .ec-party-seats{grid-column:3;grid-row:1/3;margin:0;padding:0;height:auto;min-width:0;border:0;background:none;color:#173c65;font-size:1.65rem;text-align:end;line-height:1.2}
  #view-home .ec-party-name{grid-column:2;grid-row:1;font-size:.95rem;margin:0;align-self:end}
  #view-home .ec-party-leader{grid-column:2;grid-row:2;display:block;font-size:.75rem;margin:0;align-self:start}
  #view-home .ec-party[aria-pressed=true]{background:#fbefd1;border-color:#b78d3f}
  #view-home .ec-choices-heading{position:sticky;top:125px;z-index:5;background:#eef5fc;padding:8px 0;display:flex;flex-wrap:wrap;gap:8px;border-bottom:1px solid #d3dce7}
  #view-home .ec-choices-heading h3{font-size:.95rem;margin:0}
  #view-home .ec-mobile-total{display:block;margin-inline-start:auto;font-size:1rem;font-weight:800;color:#12345c;white-space:nowrap}
  #view-home .ec-reset{min-height:44px}

  /* Polls: short tabs, one continuous page, a real chart viewport. */
  #view-polls.on>.wrap,#view-e2022>.wrap{display:block!important;height:auto!important;min-height:0!important;padding-top:12px}
  #view-polls[data-section=all] .mobile-polls-nav{display:flex;gap:6px;padding:4px 0 12px}
  .mobile-polls-nav a{flex:1;display:flex;align-items:center;justify-content:center;min-height:44px;border:1px solid #e5c78344;border-radius:8px;text-decoration:none;color:#d5dce5;font-size:.83rem;font-weight:700;text-align:center;padding:6px;box-sizing:border-box}
  .mobile-polls-nav a[aria-current=page]{background:#e5c783;color:#14233a;border-color:#e5c783}
  #view-polls .mobile-polls-nav a[aria-current=page]{color:#14233a!important}
  .polls-tabbar{display:flex;flex-direction:row;align-items:stretch;gap:6px;padding:4px 0 8px;border:0;border-radius:0;background:none;overflow-x:auto;max-width:100%;scrollbar-width:thin}
  .polls-tabbar .pn{flex:0 0 auto;width:auto;min-height:44px;align-items:center;padding:8px 12px;gap:8px;border-radius:8px}
  .polls-tabbar .pn-text b{font-size:.85rem;white-space:nowrap}
  .polls-tabbar .pn-text small,.polls-tabbar .pn-head,.polls-tabbar .pn-num{display:none}
  #view-polls .polls-layout{display:block!important;margin:0!important}
  #view-polls .polls-main,#view-polls .polls-main>.sec{height:auto;max-height:none;overflow:visible}
  #view-polls #poll-tracker{display:block}
  #view-polls .ex-workspace{padding:14px 12px;display:flex;flex-direction:column;gap:12px}
  #view-polls .ex-bar{display:flex;flex-direction:column;align-items:stretch;gap:14px}
  #view-polls .ex-keys{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  #view-polls .ex-key{padding-inline-start:7px;min-width:0}
  #view-polls .ex-key>span{white-space:normal;font-size:.75rem;max-width:none}
  #view-polls .ex-key>b{font-size:1.35rem}
  #view-polls .ex-key>:is(em,small){white-space:normal}
  #view-polls .ex-tools{margin:0;display:flex;flex-wrap:wrap;gap:8px}
  #view-polls .ex-tools select{flex:1;max-width:none;min-height:44px;height:44px}
  #view-polls .ex-tools .switch{flex:none}
  #view-polls .ex-tools .switch button{min-height:36px;padding:6px 12px}
  #view-polls .ex-picker{display:block;padding:0;border:0}
  #view-polls .ex-pickers{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;min-width:0;width:100%}
  #view-polls .ex-picker+.ex-picker{padding-top:14px}
  #view-polls .ex-picker-label{display:block;margin-bottom:10px}
  #view-polls .ex-picker-icons{display:flex;flex-wrap:wrap;gap:8px;padding:2px}
  #view-polls .ex-logo-button{width:44px;height:44px}
  #view-polls .ex-avatar{width:34px;height:34px}
  #view-polls .ex-stage{flex:none;height:320px;min-height:320px;max-height:none}
  #view-polls .ex-body{height:100%;min-height:0;overflow:visible}
  #view-polls .ex-stage:has(.ex-data-table){height:auto;min-height:0}
  #view-polls .ex-stage:has(.ex-data-table) .ex-body{height:auto}
  #view-polls .ex-basis{bottom:34px}
  #view-polls .polls-feed{position:static;max-height:none;padding:20px 0 0}
  #view-polls .feed-list{max-height:none;overflow:visible}
  #view-polls .allpolls-toolbar{display:flex;flex-wrap:wrap;gap:10px}
  #view-polls .allpolls-toolbar input{width:100%;min-height:44px}
  #view-polls .allpolls-grid{grid-template-columns:minmax(0,1fr)!important;gap:12px;max-height:none;overflow:visible}
  #view-polls:not(#_):not(#__) .pollcards{display:grid;grid-template-columns:minmax(0,1fr)!important;gap:14px;max-height:none;overflow:visible}
  #view-polls:not(#_):not(#__) .poll-result-card{min-width:0;padding:14px}
  #view-polls .poll-result-card :is(select,button){min-height:44px}
  #view-polls .poll-result-card>header{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
  #view-polls .poll-result-card .orgcell{width:100%;min-width:0}
  #view-polls .poll-result-card .orgcell>div{min-width:0;flex:1}
  #view-polls .poll-result-card .orgcell :is(h3,p,.grade){white-space:normal;max-width:100%;box-sizing:border-box}
  #view-polls .poll-result-card>header select{width:100%;height:44px}
  #view-polls:is([data-tab=gap],[data-tab=cross],[data-tab=list]) .polls-feed{display:none}
  #view-polls .poll-result-card .poll-result-head{flex-wrap:wrap;gap:10px}
  #view-polls .feed-item{padding:14px}
  #view-polls .feed-head-top{gap:8px;flex-wrap:wrap}
  #view-polls .feed-party{min-height:36px}
  #view-polls .gap-floor-body{padding:12px}
  #view-polls .gap-poll{padding:14px;gap:10px;grid-template-columns:64px minmax(0,1fr)}
  #view-polls .gap-logo .orglogo{width:64px;height:64px}
  #view-polls .gap-choose select{height:44px;min-height:44px;font-size:16px}
  #view-polls .gap-choices{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
  #view-polls .gap-choices button{justify-content:center;padding:12px}
  #view-polls .gap-rec-plot{overflow:hidden}
  #view-polls .gap-record{padding:14px}
  #view-polls .gap-rec-row{display:block;padding-block:12px;border-bottom:1px solid #e6dfd1}
  #view-polls :is(.gap-rec-plot,.gap-rec-caption,.gap-rec-axis,.gap-rec-sub){display:none}
  #view-polls .gap-rec-label{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px}
  #view-polls .gap-rec-label b{font-size:.95rem}
  #view-polls .gap-rec-mobile{display:block}
  #view-polls .gap-rec-mobile-note{display:block;font-size:.82rem;line-height:1.6}
  #view-polls .gap-rec-mobile p{padding:8px 10px;background:#edf1f6;border-radius:6px;font-size:.85rem}
  #view-polls .gap-rec-mobile ul{display:grid;gap:6px;padding:0;margin:10px 0 0;list-style:none}
  #view-polls .gap-rec-mobile li{display:grid;grid-template-columns:minmax(0,1fr) 42px 64px;gap:6px;align-items:center;padding:8px;border-radius:6px;font-size:.8rem;box-sizing:border-box}
  #view-polls .gap-rec-mobile li b{font-size:.95rem;text-align:center}
  #view-polls .gap-rec-mobile li small{font-size:.7rem;text-align:end}
  #view-polls .gap-rec-mobile li.hi{background:#e3f2f2;border-inline-start:3px solid var(--hi)}
  #view-polls .gap-rec-mobile li.lo{background:#faeddb;border-inline-start:3px solid var(--lo)}
  #view-polls .gap-go{padding:14px}
  #view-polls .cx2 .tr-card{padding:14px;gap:12px;border-radius:12px}
  #view-polls .cx2-cols{display:block;padding-bottom:12px;line-height:1.6}
  #view-polls .cx2-cols>span:not(:nth-child(3)){display:none}
  #view-polls .cx2-cols>span:nth-child(3){display:block;font-size:.78rem}
  #view-polls .cx2-row:not(.cx2-cols){grid-template-columns:28px minmax(0,1fr) auto;gap:8px;padding:12px 0}
  #view-polls .cx2-name b{font-size:.92rem;white-space:normal}
  #view-polls .cx2-name small{font-size:.74rem}
  #view-polls .cx2-bar{grid-row:2;grid-column:1/-1}
  #view-polls .cx2-d{grid-column:3;grid-row:1;font-size:.95rem}
  #view-polls .cx2-v{display:block;grid-column:1/-1;grid-row:3;text-align:end;font-size:.76rem}
  #view-polls .cx2-v::before{content:'פער בקולות: ';font-size:.7rem}

  /* Accuracy rows become readable cards, without losing their breakdown. */
  #view-e2022 .acc-hero{grid-template-columns:minmax(0,1fr);padding:20px 16px 0;gap:20px}
  #view-e2022 .acc-title{font-size:2.1rem;line-height:1.08}
  #view-e2022 .acc-hero-main{padding-bottom:0}
  #view-e2022 .acc-facts{gap:8px 18px}
  #view-e2022 .acc-facts b{font-size:1.9rem}
  #view-e2022 .acc-pod-logo .orglogo{width:42px!important;height:42px!important}
  #view-e2022 .acc-pod.p1 .acc-pod-logo .orglogo{width:50px!important;height:50px!important}
  #view-e2022 .acc-pod-base{width:100%;box-sizing:border-box;padding:12px 2px 8px}
  #view-e2022 .acc-pod.p1 .acc-pod-base{min-height:74px}
  #view-e2022 .acc-pod.p2 .acc-pod-base{min-height:64px}
  #view-e2022 .acc-pod.p3 .acc-pod-base{min-height:54px}
  #view-e2022 .acc-pod .acc-pod-score{font-size:1.65rem}
  #view-e2022 .acc-pod.p1 .acc-pod-score{font-size:1.9rem}
  #view-e2022 .acc-pod-name{font-size:.78rem;white-space:normal}
  #view-e2022 #accuracy-method{padding:14px}
  #view-e2022 .accuracy-method-band{gap:12px}
  #view-e2022 .accuracy-method-weight b{font-size:1.7rem}
  #view-e2022 .accuracy-method-weight span{font-size:.8rem}
  #view-e2022 #rank-list.acc-list{display:grid;grid-template-columns:minmax(0,1fr)!important;gap:12px;background:none;border:0;overflow:visible}
  #view-e2022 .acc-row{width:100%;box-sizing:border-box;min-width:0}
  #view-e2022 .acc-row:not(.acc-cols){display:grid;grid-template-columns:22px 40px minmax(0,1fr) auto!important;gap:10px 8px;padding:16px 12px;background:#fdfbf6;border:1px solid #e6dfd1;border-radius:12px;align-items:center;animation:none!important;opacity:1!important;transform:none!important}
  #view-e2022 .acc-cols{display:none!important}
  #view-e2022 .accuracy-rank-number{grid-column:1;grid-row:1}
  #view-e2022 .acc-row>.orglogo{grid-column:2;grid-row:1;width:40px!important;height:40px!important}
  #view-e2022 .accuracy-identity{grid-column:3;grid-row:1;min-width:0}
  #view-e2022 .accuracy-identity h3{font-size:.95rem;white-space:normal;margin:0}
  #view-e2022 .accuracy-card-type{font-size:.72rem;white-space:normal}
  #view-e2022 .accuracy-score{grid-column:4;grid-row:1;width:auto;font-size:1.8rem;line-height:1}
  #view-e2022 .acc-row>.grade{grid-column:1/4;grid-row:2;justify-self:start;max-width:100%}
  #view-e2022 .accuracy-contributions,#view-e2022 .accuracy-neutral-explain{grid-column:1/-1;grid-row:3;min-width:0;width:100%;margin:0}
  #view-e2022 .accuracy-contribution-values{display:flex;flex-wrap:wrap;gap:8px 12px;width:100%;font-size:.75rem}
  #view-e2022 .accuracy-contribution-values>span{white-space:normal}
  #view-e2022 .accuracy-sources{grid-column:1/4;grid-row:4;font-size:.75rem}
  #view-e2022 .accuracy-open{grid-column:4;grid-row:4;min-height:44px;padding:8px 12px;width:auto}
  #view-e2022 .accuracy-proof-grid{grid-template-columns:minmax(0,1fr)}
  #view-e2022 .acc-subhead{color:#d5dce5;font-size:.85rem;margin:6px 0}

  /* Demography: tabbed primary content; conclusions on demand. */
  #view-demography .dm{height:auto;min-height:0}
  #view-demography .dm-head{display:block;margin-block:16px}
  #view-demography .dm-title h2{font-size:1.55rem;line-height:1.3}
  #view-demography .dm-verdict{font-size:.95rem;margin-top:12px}
  #view-demography .dm-dash{display:flex;flex-direction:column;gap:14px;height:auto}
  #view-demography .dm-dash>.mobile-disclosure{order:1}
  #view-demography .dm-side{border:0;padding:14px;box-shadow:none}
  #view-demography .dm-main{min-height:0;overflow:visible}
  #view-demography .dm-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;padding:8px;gap:6px;max-width:100%}
  #view-demography .dm-tabs button{flex:none;min-height:44px;padding:8px 12px;font-size:.83rem}
  #view-demography .dm-panel{overflow:visible;padding:14px 12px;gap:14px;height:auto}
  #view-demography .dm-lead{font-size:.9rem;line-height:1.6;padding:10px}
  #view-demography .dm-result-grid,#view-demography .dm-result-pies{grid-template-columns:minmax(0,1fr)!important}
  #view-demography .dm .tablewrap{overflow:auto;max-height:none}
  #view-demography .dm .dtable{min-width:0}
  #view-demography .dm-head{margin-top:10px}
  #view-demography .dm-title h2{font-size:1.3rem}
  #view-demography .dm-verdict{font-size:.88rem;line-height:1.6}
  #view-demography .dm-panel{padding:12px}
  #view-demography .dm .tablewrap:has(.mobile-record-table){border:0;background:none;box-shadow:none;overflow:visible}
  #view-demography:not(#_):not(#__) .tablewrap:has(.mobile-record-table)::after{display:none}
  #view-demography .dm .mobile-record-table{display:block;min-width:0!important;width:100%;table-layout:auto}
  #view-demography .mobile-record-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  #view-demography .mobile-record-table :is(tbody,tfoot){display:grid;gap:10px}
  #view-demography .mobile-record-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;padding:12px;border:1px solid #ded8cc;border-radius:10px;background:#fff;box-sizing:border-box}
  #view-demography .mobile-record-table tr:hover{background:#fff}
  #view-demography .mobile-record-table :is(td,th){display:block;position:static!important;min-width:0;width:auto!important;padding:0!important;border:0;background:none!important;white-space:normal;text-align:start;line-height:1.45!important;overflow-wrap:anywhere;font-size:.9rem!important}
  #view-demography .mobile-record-table :is(td,th):first-child{grid-column:1/-1;font-size:.95rem!important;font-weight:800;padding-bottom:8px!important;border-bottom:1px solid #eee7db}
  #view-demography .mobile-record-table [data-mobile-label]::before{content:attr(data-mobile-label);display:block;color:#536273;font-size:.72rem;font-weight:600;line-height:1.4;margin-bottom:4px}
  #view-demography .mobile-record-table .mobile-wide-cell{grid-column:1/-1}
  #view-demography .mobile-record-table small{font-size:.75rem!important;line-height:1.5!important}
  #view-demography #identity-table .dtable :is(th,td):nth-child(4){display:none}
  #view-demography #demo-controls td>label{grid-template-columns:68px minmax(0,1fr);gap:10px}
  #view-demography #demo-controls .why{font-size:.8rem;line-height:1.6}
  #view-demography .identity-foot{flex-wrap:wrap}

  /* Map: three mobile panels, with search/filter controls tucked away. */
  #view-map.on>.r22{height:auto;min-height:0;padding-top:16px}
  #view-map .r22-head{display:block;margin-bottom:12px}
  #view-map .r22-head h2{font-size:1.3rem;line-height:1.35;margin-bottom:12px}
  #view-map .r22-years{flex-wrap:nowrap;overflow:auto;scrollbar-width:thin;gap:6px;padding-bottom:8px}
  #view-map .r22-years button{flex:none;min-height:44px;padding:8px 12px;font-size:.83rem}
  .mobile-map-nav{display:flex;gap:4px;padding:4px;background:#fdfbf6;border-radius:10px;margin-bottom:12px;position:sticky;top:calc(var(--masthead-h,64px) + 6px);z-index:10;border:1px solid #d3c9b7}
  .mobile-map-nav button{flex:1;min-width:0;min-height:44px;border:0;border-radius:7px;background:none;color:#3a4859;font:700 .85rem var(--sans)}
  .mobile-map-nav button[aria-pressed=true]{background:#14233a;color:#f6e7bd}
  #view-map .r22-dash{display:flex;flex-direction:column;gap:12px;height:auto;min-height:0}
  #view-map .r22-side{padding:12px;gap:12px;overflow:visible}
  #view-map .r22-modes{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  #view-map .r22-modes button{min-height:44px;padding:8px 4px;align-content:center;text-align:center}
  #view-map .r22-modes button b{font-size:.83rem}
  #view-map .r22-modes button small{display:none}
  #view-map .r22-mode-controls{padding:12px;gap:12px}
  #view-map .r22-field input{height:44px;min-width:0;width:100%;box-sizing:border-box}
  #view-map .r22-chips{gap:6px}
  #view-map .r22-chips button{min-height:40px;padding:7px 10px}
  #view-map .r22-map{order:1;height:clamp(370px,55dvh,520px);min-height:370px;padding:8px}
  #view-map .r22-kpi{order:2;overflow:visible;padding:14px}
  #view-map .r22-bars{order:3;height:auto;min-height:360px}
  #view-map .r22-table{order:3}
  #view-map .r22-dash[data-mobile-map-panel=map] :is(.r22-table,.r22-bars),
  #view-map .r22-dash[data-mobile-map-panel=list] :is(.r22-map,.r22-bars),
  #view-map .r22-dash[data-mobile-map-panel=detail] :is(.r22-map,.r22-table){display:none}
  #view-map .r22-bars-plot{min-height:330px;padding:10px 12px}
  #view-map .r22-row{grid-template-columns:90px minmax(0,1fr) 44px;min-height:26px;gap:6px}
  #view-map .r22-scroll{max-height:60dvh;overflow:auto}
  #view-map #r22-table{min-width:500px}
  #view-map #r22-table th button{min-height:40px}
  #view-map .r22-kpis{gap:6px}
  #view-map .r22-kpis>div{padding:10px 6px}
  #view-map .r22-kpis b{font-size:1.05rem;white-space:normal}
  #view-map .r22-kpi-sub{white-space:normal;font-size:.8rem}
  #view-map .r22-card-head{flex-wrap:wrap;gap:8px;padding:12px;min-width:0}
  #view-map .r22-bars .r22-card-head h3{white-space:normal;overflow:visible;font-size:.95rem}
  #view-map #r22-bars-legend{display:flex;flex-wrap:wrap;max-width:100%;gap:6px;font-size:.75rem}
  #view-map .r22-map-legend{flex-wrap:wrap;font-size:.75rem;gap:6px 12px}
  #view-map .r22-zoom button{width:44px;height:44px;font-size:1.3rem}
  #view-map .r22-map-plot.touch-navigation{touch-action:none}
  .mobile-map-pan{display:block;position:absolute;inset-inline-start:6px;top:26px;min-height:44px;padding:8px 12px;border:1px solid #d3c9b7;border-radius:8px;background:#fdfbf6ed;color:#14233a;font:700 .78rem var(--sans);z-index:4}
  .mobile-map-pan[aria-pressed=true]{background:#14233a;color:#fff}

  /* Method and simulations: scrollable step tabs and flowing content. */
  #view-method .mdoc-nav,#view-haredi .mdoc-nav{display:flex;flex-wrap:nowrap;overflow:auto;scrollbar-width:thin;max-width:100%;gap:6px;padding:6px 0}
  #view-method .mdoc-nav button,#view-haredi .mdoc-nav button{flex:none;min-height:44px;font-size:.82rem}
  #view-method .mdoc,#view-haredi .mdoc{min-width:0;max-width:100%}
  #view-method .mdoc-nav,#view-haredi .mdoc-nav{width:100%;height:auto;position:static;box-sizing:border-box}
  #view-method .mdoc-nav-h,#view-haredi .mdoc-nav-h{display:none}
  #view-method .msec-head,#view-haredi .msec-head{display:flex;flex-wrap:wrap;gap:12px}
  #view-method .msec-actions{display:flex;flex-wrap:wrap;gap:8px;max-width:100%}
  #view-method .msec-actions button{min-height:44px}
  #view-method .msec-grid,#view-method .mcalc,#view-haredi .haredi-grid{grid-template-columns:minmax(0,1fr)!important}
  #view-method #method-sim{padding:16px 12px}
  #view-method .ms-nav{gap:4px;padding-bottom:6px;max-width:100%}
  #view-method .ms-nav button{min-height:44px;padding:8px 12px;font-size:.83rem}
  #view-method .ms-stage{padding:16px 12px;min-height:220px;overflow:visible}
  #view-method .ms-say{font-size:.95rem;line-height:1.6}
  #view-method .ms-two{gap:20px}
  #view-method .ms-map{min-height:320px}
  #view-method .ms-map canvas{max-width:100%;height:auto!important}
  #view-method .ms-ctl{position:sticky;bottom:calc(12px + env(safe-area-inset-bottom));width:max-content;max-width:100%;margin:14px auto 0;z-index:8}
  #view-method .ms-ctl button{width:44px;height:44px;flex:none}
  #view-method .ms-sec-row{grid-template-columns:82px minmax(0,1fr) 68px;gap:8px}
  #view-method .ms-wf-row{grid-template-columns:90px minmax(0,1fr) 82px;gap:6px}
  #view-method .ms-ledger{gap:8px}
  #view-home .home-method{min-height:0!important;padding-block:24px!important}
  #view-home #method-sim{padding:16px 12px}
  #view-home #method-sim:not(.is-running) .ms-ledger{display:none}
  #view-home #method-sim:not(.is-running) .ms-stage{min-height:220px}
  #view-home .ms-nav{overflow:auto;max-width:100%;gap:4px}
  #view-home .ms-nav button{min-height:44px;padding:8px 12px;font-size:.8rem}
  #view-home .ms-ctl{position:sticky;bottom:calc(12px + env(safe-area-inset-bottom));width:max-content;max-width:100%;margin:14px auto 0;z-index:8}
  #view-home .ms-ctl button{width:44px;height:44px;flex:none}
  #method-sim .ms-stage{height:auto;max-height:none;min-height:240px;padding:16px 12px}
  #method-sim .ms-sec-row{grid-template-columns:82px minmax(0,1fr) 68px;gap:8px}
  #method-sim .ms-sec-t{display:none}
  #method-sim .ms-sec-row b,#method-sim .ms-wf-row span{font-size:.85rem;line-height:1.4}
  #method-sim .ms-wf-row{grid-template-columns:88px minmax(0,1fr) 78px;gap:6px}
  #method-sim .ms-wf-row b{font-size:.8rem;white-space:normal}
  #method-sim .ms-map canvas{max-width:100%;height:auto!important}
  #method-sim .ms-map{min-height:320px}
  #method-sim .ms-note,#method-sim .ms-foot,#method-sim .ms-key{font-size:.83rem;line-height:1.6}
  #method-sim .ms-st{flex-wrap:wrap}

  /* Scenes use content-sized cards. Desktop viewport typography must not spill
     out of their smaller phone tracks, including while counters animate. */
  #view-home .home-method{padding-block:12px!important;scroll-margin-top:calc(var(--masthead-h,64px) + 66px)}
  #view-home #method-sim{padding:0;margin:0;scroll-margin-top:calc(var(--masthead-h,64px) + 66px)}
  #method-sim :is(.ms-main,.ms-stagebox,.ms-stage,.ms-two,.ms-col,.ms-cv,.ms-cv-chart,.ms-cv-side){min-width:0;box-sizing:border-box}
  #method-sim .ms-stagebox .ms-stage{display:block;height:auto;min-height:0;max-height:none;padding:16px;overflow:visible;border-radius:12px}
  #method-sim:not(.is-running) .ms-stagebox .ms-stage{min-height:0;padding:28px 16px}
  #method-sim .ms-idle{position:relative;inset:auto;gap:8px}
  #method-sim .ms-idle-logo{width:190px;max-width:85%;margin-bottom:8px}
  #method-sim .ms-idle-title{font-size:1.35rem;line-height:1.35}
  #method-sim .ms-idle-sub{font-size:.88rem!important;line-height:1.65;margin-bottom:10px!important}
  #method-sim .ms-idle .ms-big-play{font-size:1rem;height:54px;padding:0 20px;max-width:100%}
  #method-sim .ms-say{font-size:.95rem;line-height:1.6;margin:12px 0}
  #method-sim:not(.is-running) .ms-say{display:none}
  #method-sim .ms-nav{padding:0 0 6px;gap:6px;margin-bottom:0}
  #method-sim .ms-nav button{padding:8px 10px;border:1px solid #ffffff22;border-radius:8px;gap:6px;margin:0;white-space:nowrap}
  #method-sim .ms-nav button.is-on{background:#e5c78322;border-color:#e5c783;color:#f6e7bd}
  #method-sim .ms-nav button span{width:20px;height:20px}
  #method-sim .ms-stage h3{font-size:1rem;line-height:1.5;margin-bottom:12px}
  #method-sim .ms-two{grid-template-columns:minmax(0,1fr);gap:22px}
  #method-sim .ms-big b{font-size:2.65rem;line-height:1.1;overflow-wrap:anywhere}
  #method-sim .ms-big small{font-size:.8rem}
  #method-sim .ms-line{font-size:.9rem;line-height:1.6}
  #method-sim .ms-split{height:34px}
  #method-sim .ms-split b{font-size:.9rem}
  #method-sim .ms-src{gap:10px}
  #method-sim .ms-src-row{grid-template-columns:26px minmax(0,1fr) 24px;gap:6px 10px;padding:12px;box-sizing:border-box}
  #method-sim .ms-src-n{grid-column:1;grid-row:1;width:26px;height:26px}
  #method-sim .ms-src-t{grid-column:2;grid-row:1;min-width:0}
  #method-sim .ms-src-t b{font-size:.9rem;line-height:1.4}
  #method-sim .ms-src-t small{font-size:.72rem;line-height:1.6}
  #method-sim .ms-src-v{grid-column:2;grid-row:2;text-align:start;min-width:0}
  #method-sim .ms-src-v b{font-size:1.4rem;line-height:1.25;font-variant-numeric:tabular-nums}
  #method-sim .ms-src-v small{display:block;font-size:.72rem}
  #method-sim .ms-src-ok{grid-column:3;grid-row:1;width:22px;height:22px}
  #method-sim .ms-sec{gap:14px}
  #method-sim .ms-sec-row{grid-template-columns:76px minmax(0,1fr) 62px;gap:8px}
  #method-sim .ms-sec-bar{height:22px}
  #method-sim .ms-sec-g{font-size:.76rem}
  #method-sim .ms-map{min-height:0;padding-bottom:32px}
  #method-sim .ms-map canvas{height:280px!important;width:auto!important;max-width:100%;object-fit:contain}
  #method-sim .ms-map-key{flex-wrap:wrap;gap:6px;font-size:.65rem}
  #method-sim .ms-grad{width:65px}
  #method-sim .ms-wf-in{gap:12px}
  #method-sim .ms-wf-row{grid-template-columns:82px minmax(0,1fr) 72px;gap:6px}
  #method-sim .ms-wf-t{height:24px}
  #method-sim .ms-pl-head{display:flex;flex-wrap:wrap;gap:8px;font-size:.72rem;padding:0 0 10px}
  #method-sim .ms-pl-head>span:first-child{display:none}
  #method-sim .ms-pl-axis{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center}
  #method-sim .ms-pl-axis em{margin:0;font-size:.7rem}
  #method-sim .ms-pl-row{grid-template-columns:28px minmax(0,1fr);gap:7px 10px;padding:10px 0}
  #method-sim .ms-pl-n{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
  #method-sim .ms-pl-n b{font-size:.9rem;white-space:normal}
  #method-sim .ms-pl-track{grid-column:1/-1;height:28px}
  #method-sim .ms-pl-g,#method-sim .ms-pl-w{display:flex;opacity:1;font-size:.72rem;gap:6px;grid-column:1/-1;min-width:0;flex-wrap:wrap}
  #method-sim .ms-pl-w{display:none}
  #method-sim .ms-pl-avg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 6px;padding:12px 0 0}
  #method-sim .ms-pl-avg small{font-size:.7rem;line-height:1.5}
  #method-sim .ms-pl-avg b{font-size:1.65rem}
  #method-sim .ms-pl-avg>div{padding-inline-start:6px;min-width:0}
  #method-sim .ms-pl-avg .ms-note{grid-column:1/-1;font-size:.78rem}
  #method-sim .ms-sqs{grid-template-columns:repeat(20,minmax(0,1fr));gap:3px}
  #method-sim .ms-st-n{font-size:.88rem;line-height:1.6;margin-top:10px}
  #method-sim .ms-st-n b{font-size:1.6rem}
  #method-sim .ms-gapline{font-size:.95rem;padding:12px;line-height:1.6}
  #method-sim .ms-sw2 .ms-dv-row{grid-template-columns:96px minmax(0,1fr) 44px;gap:6px}
  #method-sim .ms-sw2 .ms-dv-row span{font-size:.8rem}
  #method-sim .ms-sw2 .ms-dv-row b{font-size:.9rem}
  #method-sim .ms-cv{grid-template-columns:minmax(0,1fr);gap:20px}
  #method-sim .ms-cv-chart{padding-top:60px}
  #method-sim .ms-cv-plots{--cvh:190px;gap:10px}
  #method-sim .ms-cv-names{gap:10px}
  #method-sim .ms-cv-names span{font-size:.82rem;line-height:1.5}
  #method-sim .ms-cv-v b{font-size:1.85rem}
  #method-sim .ms-cv-v em{font-size:.82rem}
  #method-sim .ms-cv-line span{font-size:.72rem}
  #method-sim .ms-cv-line span{display:none}
  #method-sim .ms-cv-chart::after{content:'קו מקווקו: 61 מנדטים לרוב';font-size:.72rem;color:#536273;text-align:center;line-height:1.5}
  #method-sim .ms-cv-now{grid-template-columns:32px minmax(0,1fr);gap:6px 10px;padding:12px}
  #method-sim .ms-cv-n{width:32px;height:32px;font-size:1rem}
  #method-sim .ms-cv-now b{font-size:1.05rem}
  #method-sim .ms-cv-now small{font-size:.88rem;line-height:1.6}
  #method-sim .ms-cv-steps{gap:6px;justify-content:center}
  #method-sim .ms-cv-steps li{width:28px;height:28px;font-size:.8rem;box-sizing:border-box}
  #view-home #method-sim .ms-ctl{order:-1;position:sticky;top:calc(var(--masthead-h,64px) + 66px);bottom:auto;margin:0 auto 12px;padding:6px;max-width:100%;box-sizing:border-box;z-index:12;background:#14233a}
  #method-sim .ms-stagebox{display:flex;flex-direction:column;padding-bottom:4px}
  #method-sim .ms-ledger{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}
  #method-sim .ms-chip{padding:10px;min-width:0;gap:4px}
  #method-sim .ms-chip:last-child{grid-column:1/-1}
  #method-sim .ms-chip small{font-size:.74rem;line-height:1.5}
  #method-sim .ms-chip b{font-size:1.4rem}
  #method-sim .ms-chip em{font-size:.7rem;line-height:1.5}
  #method-sim .ms-main>.mobile-disclosure{margin-top:12px;background:#14283d;border-color:#ffffff25;color:#e5c783}
  #method-sim .ms-main>.mobile-disclosure>summary{border-color:#ffffff25}
  #method-sim .ms-main>.mobile-disclosure .ms-ledger{padding:10px;margin:0}
  #method-sim:not(.is-running) .ms-main>.mobile-disclosure{display:none}
  #view-method .sources-groups{grid-template-columns:minmax(0,1fr)!important}
  #view-method .sources-group{min-width:0;width:auto}
  #view-method .msec-head{display:grid;grid-template-columns:32px minmax(0,1fr);padding:14px;gap:10px}
  #view-method .msec-num{width:32px;height:32px;font-size:.9rem}
  #view-method .msec-title h2{font-size:1.08rem}
  #view-method .msec-title p{font-size:.83rem}
  #view-method .msec-actions{grid-column:1/-1;gap:10px}
  #view-method .msec>.mobile-disclosure{border:0;border-radius:0;box-shadow:none}
  #view-method .msec>.mobile-disclosure>summary{background:#f6f1e7}
  #view-method .msec-body{padding:14px;gap:16px}
  #view-method .msec-body :is(a,.formula){overflow-wrap:anywhere;white-space:normal}

  /* Election night: the channels' exit polls stacked one above the other. */
  #view-live.on,#view-results.on{height:auto!important;min-height:0!important;overflow:visible!important}
  /* The desktop one-screen lock (body overflow hidden) would freeze the stacked list. */
  body:has(#view-live.on),body:has(#view-results.on){overflow:visible!important}
  #view-live .exit-showcase{height:auto!important;min-height:0!important;padding:20px 16px}
  #view-live .exit-showcase-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-auto-rows:auto!important;max-width:100%;overflow:visible;gap:14px;padding-bottom:4px}
  #view-live .es-card{width:auto;min-width:0;height:auto}
  #view-live .es-stage{height:auto;aspect-ratio:16/10}
  #view-live .exit-showcase-heading h2{font-size:1.5rem}
  #view-live .exit-showcase-disclaimer{margin-top:16px}

  /* Details open as full-width sheets with a reachable close button. */
  dialog:not(.mobile-menu){width:calc(100% - 16px)!important;max-width:620px!important;max-height:calc(100dvh - 24px)!important;margin:auto!important;padding:20px 14px!important;border-radius:16px!important;box-sizing:border-box;overflow:auto;overscroll-behavior:contain}
  dialog .dclose{position:sticky!important;top:0;inset-inline-start:0;display:grid;place-items:center;margin-inline-start:auto;width:44px;height:44px;min-height:44px;z-index:8;background:#fdfbf6!important;color:#14233a!important;border:1px solid #d3c9b7;border-radius:50%;font-size:1.8rem}
  dialog :is(.grid,.two,.three,.accuracy-detail-grid){grid-template-columns:minmax(0,1fr)!important}
  dialog .tablewrap{max-width:100%;overflow:auto}
  dialog .tablewrap table{min-width:max-content}
  #poll-gallery .poll-gallery-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:0 0 14px}
  #poll-gallery [data-gallery-close]{width:44px;height:44px;flex:none}
  #poll-gallery .poll-gallery-cards{display:block}
  #poll-gallery .feed-item{padding:12px}
  .tr-tip,.average-tooltip{max-width:calc(100% - 16px)!important;box-sizing:border-box;font-size:.8rem}
  .analytics-consent{width:calc(100vw - 24px)!important;max-width:none!important}
  .analytics-consent-inner{padding:18px!important}
  .analytics-consent button{min-height:44px!important}
  /* A short footer: logo, the two fold-outs side by side, one note and one link row.
     The page links repeat the menu, so they are left to it. */
  body>footer{padding:16px 16px calc(14px + env(safe-area-inset-bottom));box-sizing:border-box}
  body>footer .wrap{width:100%;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:8px 8px}
  body>footer .fbrand{flex:0 0 100%;margin:0}
  body>footer .fbrand .brand-logo{height:22px;width:auto}
  body>footer .footer-details{flex:0 0 auto;min-width:0;margin:0;padding:0;border:0}
  body>footer .footer-details[open]{flex-basis:100%}
  body>footer .footer-utility{flex:0 0 100%;order:2;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:2px 6px;font-size:.7rem;white-space:nowrap}
  body>footer .footer-utility:not(:has(details[open])){flex-wrap:nowrap}
  body>footer .footer-utility .footer-details>summary{display:inline-flex;align-items:center;min-height:32px}
  body>footer .wrap{justify-content:center}
  body>footer .fbrand{display:flex;justify-content:center}
  body>footer .admin-inline-status{text-align:center}
  body>footer .footer-utility a{display:inline-flex;align-items:center;min-height:32px}
  body>footer .footer-utility #admin-trigger{min-height:32px;padding:0;font-size:.72rem}
  body>footer .admin-inline-status{flex:0 0 100%;order:3;margin:0}
  body>footer .admin-inline-status:empty{display:none}
  .admin-wrap,.info-wrap{width:100%;padding:20px 16px;box-sizing:border-box}
  .admin-heading,.admin-toolbar,.section-heading{flex-wrap:wrap;gap:12px}
  .admin-card,.info-card{padding:16px}
  .admin-fields,.admin-stats,.login-fields{grid-template-columns:minmax(0,1fr)}
  .party-inputs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-wrap :is(input,select,button){min-height:44px;font-size:16px;max-width:100%}
  .admin-wrap .tablewrap{overflow:auto}
}
/* Ivory surfaces outside the theme's card list re-declare the light tokens, so
   links and secondary text stay dark (the frame's --navy-text is light blue). */
@media (max-width:900px){
  .view .acc-subhead,.mobile-disclosure:not(#method-sim *){--navy-text:#12345C;--ink:#14233a;--ink-2:#3a4859;--ink-3:#586575;--gold:#855a0c;--accent:#855a0c}
  #view-e2022 .acc-subhead{color:#586575}}
/* Phone simulation player: one screen, no page scroll. mobile.js sets the stage
   box height from the viewport and scales a tall scene to fit (is-phone-fit). */
@media (max-width:900px){
  /* The simulation is a dark panel at the end of the forecast card, under the seat map. */
  #view-home .verdict .home-method{display:block;margin:18px 0 0!important;padding:0!important;min-height:0!important;background:none!important}
  #view-home .verdict .home-method>.wrap{width:100%;max-width:none;margin:0;padding:0}
  #view-home .verdict #method-sim{margin:0;padding:10px;border-radius:14px;background:linear-gradient(160deg,#12345c,#0b1d33 70%);box-shadow:0 12px 28px -16px #000a;color:#f6f3ec}
  #view-home .verdict #method-sim:not(.is-running){padding:0;background:none;box-shadow:none}
  #method-sim.is-phone-fit:not(.is-running) .ms-say{display:none}
  #method-sim.is-phone-fit{display:flex;flex-direction:column;gap:8px}
  #method-sim.is-phone-fit .ms-bar{display:none}
  #method-sim.is-phone-fit .ms-nav{display:flex;flex-wrap:nowrap;gap:3px;overflow:hidden;padding:0;margin:0;border:0}
  #method-sim.is-phone-fit .ms-nav button{flex:0 0 32px;width:32px;height:36px;min-height:36px;padding:0;border:1px solid #ffffff22;border-radius:9px;justify-content:center;gap:0;font-size:0;margin:0}
  #method-sim.is-phone-fit .ms-nav button span{width:22px;height:22px;font-size:.74rem}
  #method-sim.is-phone-fit .ms-nav button.is-on{flex:1 1 auto;width:auto;min-width:0;padding:0 6px;gap:0;font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  #method-sim.is-phone-fit .ms-nav button.is-on span{display:none}
  #method-sim.is-phone-fit:not(.is-running) .ms-nav{display:none}
  #method-sim.is-phone-fit .ms-say{margin:0;font-size:.86rem;line-height:1.45;min-height:2.9em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  #method-sim.is-phone-fit .ms-main{display:flex;flex-direction:column;gap:0}
  #method-sim.is-phone-fit .ms-stagebox{display:flex;flex-direction:column;gap:8px;padding:0}
  #method-sim.is-phone-fit .ms-stagebox .ms-stage{flex:1 1 auto;min-height:0;max-height:none;height:auto;overflow:hidden;padding:12px}
  #method-sim.is-phone-fit:not(.is-running) .ms-stagebox .ms-stage{display:grid;place-items:center;padding:20px 16px}
  #view-home #method-sim.is-phone-fit .ms-ctl{order:0;position:static;flex:none;margin:0 auto;padding:4px 8px;background:#14233a}
  #method-sim.is-phone-fit .is-measuring [hidden]{display:block!important}
  /* Room reserved for parts a scene adds later, so the scale is chosen once. */
  #method-sim.is-phone-fit .ms-wf:not(:has(.ms-wf-row)){min-height:136px}
  /* Dense scenes get a phone composition, so the fit scale stays readable. */
  #method-sim.is-phone-fit .ms-src{gap:6px}
  #method-sim.is-phone-fit .ms-src-row{grid-template-columns:24px minmax(0,1fr) auto 20px;grid-template-areas:"n t v ok" "bar bar bar bar";gap:4px 8px;padding:8px 10px;align-items:center}
  #method-sim.is-phone-fit .ms-src-n{grid-area:n;width:24px;height:24px}
  #method-sim.is-phone-fit .ms-src-t{grid-area:t;min-width:0}
  #method-sim.is-phone-fit .ms-src-t b{display:block;font-size:.84rem;line-height:1.3}
  #method-sim.is-phone-fit .ms-src-t small{display:block;font-size:.66rem;line-height:1.35}
  #method-sim.is-phone-fit .ms-src-v{grid-area:v;text-align:end}
  #method-sim.is-phone-fit .ms-src-v b{font-size:1.1rem}
  #method-sim.is-phone-fit .ms-src-v small{font-size:.62rem;max-width:84px;line-height:1.3}
  #method-sim.is-phone-fit .ms-src-ok{grid-area:ok;width:20px;height:20px}
  #method-sim.is-phone-fit .ms-src-bar{grid-area:bar;height:3px;display:block}
  #method-sim.is-phone-fit .ms-foot{font-size:.8rem;margin:8px 0 0}
  #method-sim.is-phone-fit .ms-stage h3{font-size:.92rem;margin:0 0 8px}
  #method-sim.is-phone-fit .ms-geo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"h map" "big map" "wf wf";gap:6px 12px;align-items:start}
  #method-sim.is-phone-fit .ms-geo .ms-res{display:contents}
  #method-sim.is-phone-fit .ms-geo #ms-geo-h{grid-area:h;margin:0}
  #method-sim.is-phone-fit .ms-geo .ms-big{grid-area:big}
  #method-sim.is-phone-fit .ms-geo .ms-big small{display:block;font-size:.74rem;line-height:1.45}
  #method-sim.is-phone-fit .ms-geo .ms-wf{grid-area:wf;margin-top:6px}
  #method-sim.is-phone-fit .ms-geo .ms-map{grid-area:map;min-height:0;padding:0}
  #method-sim.is-phone-fit .ms-geo .ms-map canvas{height:240px!important;width:100%!important;max-width:100%;object-fit:cover}
  #method-sim.is-phone-fit .ms-geo .ms-map-key{position:static;justify-content:center;gap:4px;font-size:.62rem;margin-top:4px}
  #method-sim.is-phone-fit .ms-geo .ms-grad{width:34px}
  #method-sim.is-phone-fit .ms-wf-in{gap:6px}
  #method-sim.is-phone-fit .ms-wf-row{grid-template-columns:118px minmax(0,1fr) 78px;gap:6px}
  #method-sim.is-phone-fit .ms-wf-row span{font-size:.76rem;line-height:1.3}
  #method-sim.is-phone-fit .ms-wf-t{height:18px}
  #method-sim.is-phone-fit .ms-polls{display:grid;gap:4px}
  #method-sim.is-phone-fit .ms-pl-head{padding:0 0 6px;font-size:.7rem}
  #method-sim.is-phone-fit .ms-pl-head>span:not(.ms-pl-axis){display:none}
  #method-sim.is-phone-fit .ms-pl-row{display:grid;grid-template-columns:20px 84px minmax(0,1fr);grid-template-areas:"logo name track" "logo grade track";gap:1px 8px;align-items:center;padding:4px 0}
  #method-sim.is-phone-fit .ms-pl-row>:first-child{grid-area:logo;width:20px;height:20px}
  #method-sim.is-phone-fit .ms-pl-n{grid-area:name;display:block;min-width:0}
  #method-sim.is-phone-fit .ms-pl-n b{display:block;font-size:.8rem;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  #method-sim.is-phone-fit .ms-pl-n small{display:none}
  #method-sim.is-phone-fit .ms-pl-g{grid-area:grade;display:flex;flex-wrap:nowrap;gap:0;min-width:0}
  #method-sim.is-phone-fit .ms-pl-g small{display:none}
  #method-sim.is-phone-fit .ms-pl-g em{font-size:.62rem;padding:1px 6px;white-space:nowrap}
  #method-sim.is-phone-fit .ms-pl-track{grid-area:track;height:22px}
  #method-sim.is-phone-fit .ms-pl-seg b{font-size:.68rem}
  #method-sim.is-phone-fit .ms-pl-avg{gap:6px;padding:8px 0 0}
  #method-sim.is-phone-fit .ms-pl-avg b{font-size:1.4rem}
  #method-sim.is-phone-fit .ms-pl-avg small{font-size:.66rem;line-height:1.35}
  #method-sim.is-phone-fit .ms-pl-avg .ms-note{font-size:.7rem;line-height:1.45;margin:0}
  #method-sim.is-phone-fit .ms-sw2{gap:12px}
  #method-sim.is-phone-fit .ms-sqs{grid-template-columns:repeat(30,minmax(0,1fr));gap:2px}
  #method-sim.is-phone-fit .ms-st-n{margin:4px 0 8px;font-size:.8rem}
  #method-sim.is-phone-fit .ms-st-n b{font-size:1.25rem}
  #method-sim.is-phone-fit .ms-gapline{padding:8px 10px;font-size:.84rem;margin:0}
  #method-sim.is-phone-fit .ms-dv{display:grid;gap:3px}
  #method-sim.is-phone-fit .ms-sw2 .ms-dv-row{min-height:0}
  #method-sim.is-phone-fit .ms-key{font-size:.7rem;margin-top:6px}
  #method-sim.is-phone-fit .ms-cv{gap:10px}
  #method-sim.is-phone-fit .ms-cv-chart{padding-top:34px;gap:4px}
  #method-sim.is-phone-fit .ms-cv-plots{--cvh:150px}
  #method-sim.is-phone-fit .ms-cv-chart::after{display:none}
  #method-sim.is-phone-fit .ms-cv-now{padding:8px 10px}
  #method-sim.is-phone-fit .ms-cv-now small{font-size:.8rem;line-height:1.45}
  #method-sim.is-phone-fit .ms-cv-side .ms-hemi svg{max-height:140px}
  #method-sim.is-phone-fit .ms-hemi:empty{min-height:150px}
  #method-sim.is-phone-fit .ms-result{font-size:.82rem;padding:6px 10px}
}
@media (max-width:360px){
  :root{--edge:12px}
  .masthead .brand-logo{width:140px!important}
  #view-polls .ex-keys{grid-template-columns:repeat(2,minmax(0,1fr))}
  #view-home .fs-side{padding:12px}
  #view-home:not(#_):not(#__) .fs-center .readout .rd b{font-size:1.8rem}
  /* Two party columns leave ~60px per name here; one column keeps joint-list names whole. */
  #view-polls #polls-cards .poll-cols{grid-template-columns:minmax(0,1fr)}
  #view-polls #polls-cards .poll-cols .poll-list:first-child{border-inline-end:0;padding-inline-end:0}
  #view-polls #polls-cards .poll-cols li{height:32px}
}
@media (prefers-reduced-motion:reduce){
  .mobile-menu[open]{animation:none!important}
}
