@font-face{font-family:"Heebo";src:url(heebo.ttf) format("truetype");font-weight:100 900;font-display:swap}
:root{
  --paper:#F3F5F8; --surface:#FFFFFF; --ink:#15181C; --ink-2:#4B525B; --line:#DDE2E9; --line-strong:#7D8A99;
  --accent:#1D3FA6; --accent-ink:#FFFFFF; --accent-soft:#E8EDFA;
  --staff:#7A4A00; --staff-soft:#FBF0DA; --staff-line:#E6C88E;
  --ok:#2F6B3A;
  --font:"Heebo",system-ui,sans-serif;
  --t-xs:.8125rem; --t-sm:.875rem; --t-md:1rem; --t-lg:1.25rem; --t-xl:1.75rem; --t-2xl:2.5rem;
  --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s5:24px; --s6:32px; --s7:48px; --s8:72px;
  --r-sm:6px; --r-md:10px; --r-pill:999px;
  --focus:0 0 0 3px var(--paper),0 0 0 5px var(--accent);
}
*{box-sizing:border-box;margin:0}
html{font-family:var(--font);color:var(--ink);background:var(--paper);font-size:100%;line-height:1.5}
body{min-height:100vh}
a{color:var(--accent);text-underline-offset:3px}
:focus-visible{outline:none;box-shadow:var(--focus);border-radius:var(--r-sm)}
.skip{position:absolute;inset-inline-start:-999px}.skip:focus{inset-inline-start:var(--s4);top:var(--s2);background:var(--surface);padding:var(--s2) var(--s3)}
.bar{display:flex;align-items:center;gap:var(--s5);padding:var(--s4) var(--s5);border-bottom:1px solid var(--line);background:var(--surface)}
.mark{font-weight:800;font-size:var(--t-lg);letter-spacing:-.01em;color:var(--ink);text-decoration:none}
.bar nav{display:flex;gap:var(--s4)}
.bar nav a{color:var(--ink-2);text-decoration:none;font-size:var(--t-sm);font-weight:500;padding:var(--s1) 0}
.bar nav a[aria-current]{color:var(--ink);box-shadow:inset 0 -2px 0 var(--ink)}
.who{margin-inline-start:auto;font-size:var(--t-sm);color:var(--ink-2);display:flex;gap:var(--s3);align-items:center}
.role{font-weight:600;color:var(--ink)}
main{max-width:1040px;margin:0 auto;padding:var(--s6) var(--s5) var(--s8)}
h1{font-size:var(--t-xl);font-weight:800;letter-spacing:-.015em;line-height:1.2}
h2{font-size:var(--t-md);font-weight:700}
.lede{color:var(--ink-2);margin-top:var(--s2);max-width:60ch}
/* search field */
.search{display:flex;gap:var(--s2);margin-top:var(--s5)}
.search input{flex:1;min-width:0;font:inherit;font-size:var(--t-lg);padding:var(--s3) var(--s4);border:1.5px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);color:var(--ink)}
.search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}
/* buttons */
.btn{font:inherit;font-weight:600;font-size:var(--t-md);border-radius:var(--r-md);padding:var(--s3) var(--s5);border:1.5px solid transparent;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:var(--s2)}
.btn-primary{background:var(--accent);color:var(--accent-ink)}
.login-box .btn-primary svg{background:#fff;border-radius:50%;padding:2px;width:22px;height:22px}
.btn-secondary{background:var(--surface);color:var(--ink);border-color:var(--line-strong)}
.btn-quiet{background:none;color:var(--accent);padding-inline:var(--s2)}
/* filters */
.filters{margin-top:var(--s5);display:flex;flex-wrap:wrap;gap:var(--s5) var(--s6);border:0;padding:0}
.fgroup{display:flex;flex-wrap:wrap;gap:var(--s2);align-items:center}
.fgroup>span{font-size:var(--t-sm);font-weight:600;color:var(--ink-2);margin-inline-end:var(--s1)}
.chip{font:inherit;font-size:var(--t-sm);font-weight:500;padding:6px var(--s3);border-radius:var(--r-pill);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);cursor:pointer}
.chip[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.staffzone{padding:var(--s2) var(--s3);background:var(--staff-soft);border:1px solid var(--staff-line);border-radius:var(--r-md)}
.staffzone>span{color:var(--staff)}
.staffzone .chip{border-color:var(--staff-line)}
.staffzone .chip[aria-pressed=true]{background:var(--staff);border-color:var(--staff);color:#fff}
/* results / members */
.count{margin-top:var(--s6);font-size:var(--t-sm);color:var(--ink-2)}
.count strong{color:var(--ink)}
.rows{list-style:none;padding:0;margin-top:var(--s3);border-top:1px solid var(--line)}
.row{display:grid;grid-template-columns:minmax(180px,1.2fr) 2fr auto;gap:var(--s2) var(--s5);align-items:center;padding:var(--s4) var(--s2);border-bottom:1px solid var(--line)}
.row:hover{background:var(--surface)}
.who-cell a{font-weight:700;color:var(--ink);text-decoration:none;font-size:var(--t-md)}
.who-cell a:hover{text-decoration:underline}
.who-cell div{font-size:var(--t-sm);color:var(--ink-2)}
.traits{display:flex;flex-wrap:wrap;gap:var(--s2);list-style:none;padding:0}
.trait{font-size:var(--t-sm);padding:var(--s1) 10px;line-height:1.4;border-radius:var(--r-sm);background:var(--accent-soft);color:var(--ink)}
.trait b{font-weight:600}
.trait.staff{background:var(--staff-soft);color:var(--staff);border:1px solid var(--staff-line)}
.trait.staff::before{content:"מטה בלבד · ";font-weight:600}
.status{font-size:var(--t-sm);color:var(--ink-2);white-space:nowrap}
.status.on{color:var(--ok);font-weight:600}
/* person card */
.card{display:grid;grid-template-columns:1fr 300px;gap:var(--s6);margin-top:var(--s5)}
.back{font-size:var(--t-sm)}
.facts{margin-top:var(--s5);display:grid;gap:var(--s5)}
.section{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s5)}
.section h2{margin-bottom:var(--s3)}
dl.kv{display:grid;grid-template-columns:max-content 1fr;gap:var(--s2) var(--s5)}
dl.kv dt{color:var(--ink-2);font-size:var(--t-sm)}
dl.kv dd{font-weight:500}
.section.staffsec{background:var(--staff-soft);border-color:var(--staff-line)}
.section.staffsec h2{color:var(--staff)}
.aside .section+.section{margin-top:var(--s4)}
.aside .btn{width:100%}
.note{font-size:var(--t-sm);color:var(--ink-2);margin-top:var(--s2)}
/* login */
.login{min-height:100vh;display:grid;place-items:center;padding:var(--s5)}
.login-box{width:100%;max-width:380px}
.login-box .mark{font-size:var(--t-2xl);display:block}
.login-box form{margin-top:var(--s5);display:grid;gap:var(--s4)}
.field label{display:block;font-size:var(--t-sm);font-weight:600;margin-bottom:var(--s1)}
.field input{width:100%;font:inherit;padding:var(--s3);border:1.5px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface)}
.field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}
.or{display:flex;align-items:center;gap:var(--s3);color:var(--ink-2);font-size:var(--t-sm);margin-top:var(--s4)}
.or::before,.or::after{content:"";flex:1;height:1px;background:var(--line)}
.demo{font-size:var(--t-xs);color:var(--ink-2);text-align:center;padding:var(--s2);border-top:1px solid var(--line)}
@media (max-width:720px){
  .bar{flex-wrap:wrap;gap:var(--s3);padding:var(--s3) var(--s4)}
  .bar nav{order:3;width:100%;overflow-x:auto}
  main{padding:var(--s5) var(--s4) var(--s7)}
  .search input{font-size:var(--t-md)}
  .row{grid-template-columns:1fr auto}
  .row .traits{grid-column:1/-1;grid-row:2}
  .card{grid-template-columns:1fr}
  dl.kv{grid-template-columns:1fr}
  dl.kv dd{margin-bottom:var(--s2)}
}
/* ---- v2.1 components ---- */
.card.single{grid-template-columns:1fr}
.card.single>div{max-width:720px}
.consent{font-size:var(--t-sm);color:var(--ink-2);margin-top:var(--s2)}
.consent b{color:var(--ink);font-weight:600}
.hint{font-size:var(--t-sm);color:var(--ink-2)}
.sortline{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s4);align-items:baseline;margin-top:var(--s6)}
.sortline .count{margin-top:0}
/* forms */
.form{display:grid;gap:var(--s5);margin-top:var(--s5)}
.form fieldset{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);padding:var(--s5);display:grid;gap:var(--s4);min-width:0}
.form legend{font-weight:700;padding:0 var(--s2)}
.form fieldset.staffsec{background:var(--staff-soft);border-color:var(--staff-line)}
.form fieldset.staffsec legend{color:var(--staff)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:var(--s4)}
.field select,.field textarea{width:100%;font:inherit;padding:var(--s3);border:1.5px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);color:var(--ink)}
.field select:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}
.field .hint{margin-top:var(--s1)}
.traitedit{list-style:none;padding:0;display:grid;gap:var(--s2)}
.traitedit li{display:grid;grid-template-columns:1fr 2fr auto;gap:var(--s2);align-items:end}
.actions{display:flex;flex-wrap:wrap;gap:var(--s3);align-items:center}
.btn-danger{background:var(--surface);color:var(--ink);border-color:var(--ink)}
.btn[disabled]{opacity:.5;cursor:not-allowed}
.danger-zone{border-top:1px solid var(--line);padding-top:var(--s5);display:flex;flex-wrap:wrap;gap:var(--s3);justify-content:space-between;align-items:center}
/* consequences */
.conseq{list-style:none;padding:0;display:grid;gap:var(--s3);margin-top:var(--s4)}
.conseq li{display:grid;grid-template-columns:7rem 1fr;gap:var(--s3);padding-bottom:var(--s3);border-bottom:1px solid var(--line)}
.conseq li b{font-weight:700}
/* timeline */
.timeline{list-style:none;padding:0;margin-top:var(--s3);border-inline-start:2px solid var(--line);display:grid;gap:var(--s4)}
.timeline li{padding-inline-start:var(--s4);position:relative}
.timeline li::before{content:"";position:absolute;inset-inline-start:-6px;top:8px;width:10px;height:10px;border-radius:50%;background:var(--surface);border:2px solid var(--line-strong)}
.timeline li.now::before{background:var(--accent);border-color:var(--accent)}
.timeline .when{font-size:var(--t-sm);color:var(--ink-2)}
.orbit{font-weight:700}
.stale{font-size:var(--t-sm);color:var(--ink);font-weight:600;margin-top:var(--s2)}
/* toggles */
.toggles{display:flex;flex-wrap:wrap;gap:var(--s2)}
.toggle{font:inherit;font-size:var(--t-sm);font-weight:600;padding:var(--s2) var(--s4);border-radius:var(--r-md);border:1.5px solid var(--line-strong);background:var(--surface);color:var(--ink);cursor:pointer}
.toggle[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}
.toggle[aria-pressed=true]::before{content:"✓ "}
/* selectable rows + bulk bar */
.row.sel{grid-template-columns:auto minmax(160px,1.2fr) 2fr auto}
.row.sel input{width:20px;height:20px;accent-color:var(--accent)}
.row.picked{background:var(--accent-soft)}
.bulkbar{position:sticky;top:0;z-index:2;display:flex;flex-wrap:wrap;gap:var(--s3);align-items:center;padding:var(--s3) var(--s4);margin-top:var(--s4);background:var(--ink);color:var(--paper);border-radius:var(--r-md)}
.bulkbar .btn{padding:var(--s2) var(--s4);font-size:var(--t-sm)}
.bulkbar .btn-secondary{background:transparent;color:var(--paper);border-color:#8C96A3}
.bulkbar .btn-primary{background:var(--paper);color:var(--ink)}
.toast{position:fixed;inset-inline-start:var(--s5);bottom:var(--s5);display:flex;gap:var(--s4);align-items:center;background:var(--ink);color:var(--paper);padding:var(--s3) var(--s4);border-radius:var(--r-md);font-size:var(--t-sm)}
.toast button{font:inherit;font-weight:700;background:none;border:0;color:#AFC3FF;cursor:pointer;text-decoration:underline}
/* claims table-ish */
.claims{list-style:none;padding:0;margin-top:var(--s3);border-top:1px solid var(--line)}
.claims li{display:grid;grid-template-columns:1.4fr 1fr 1fr auto;gap:var(--s2) var(--s4);padding:var(--s3) var(--s2);border-bottom:1px solid var(--line);align-items:baseline}
.claims .src{font-size:var(--t-sm);color:var(--ink-2)}
.why{font-size:var(--t-sm);color:var(--ink-2);margin-top:2px}
.why mark{background:none;color:var(--ink);font-weight:700}
.note-box{display:grid;gap:var(--s2)}
@media (max-width:720px){
  .grid2{grid-template-columns:1fr}
  .traitedit li{grid-template-columns:1fr 1fr}
  .traitedit li .btn{grid-column:1/-1;justify-self:start}
  .row.sel{grid-template-columns:auto 1fr auto}
  .row.sel .traits{grid-column:2/-1;grid-row:2}
  .claims li{grid-template-columns:1fr auto}
  .claims li .src{grid-column:1/-1}
  .conseq li{grid-template-columns:1fr}
  .toast{inset-inline:var(--s4)}
}
.staff-tag{font-size:var(--t-xs);font-weight:600;color:var(--staff);background:var(--staff-soft);border:1px solid var(--staff-line);border-radius:var(--r-sm);padding:2px var(--s2);margin-inline-start:var(--s2)}
