@font-face{font-family:"Frank Ruhl Libre";font-style:normal;font-weight:900;font-display:swap;src:url(/static/fonts/frank-hebrew.woff2) format("woff2");unicode-range:U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F}
@font-face{font-family:"Frank Ruhl Libre";font-style:normal;font-weight:900;font-display:swap;src:url(/static/fonts/frank-latin.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Rubik";font-style:normal;font-weight:400 800;font-display:swap;src:url(/static/fonts/rubik-hebrew.woff2) format("woff2");unicode-range:U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F}
@font-face{font-family:"Rubik";font-style:normal;font-weight:400 800;font-display:swap;src:url(/static/fonts/rubik-latin.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
:root{--on-dark:#fff;--on-dark-rule:rgba(255,255,255,.7);--sw-edge:rgba(0,0,0,.3);--ground:#dfe2dc;--slip:#fbfbf7;--ink:#121212;--muted:#4f5550;--edge:#b9bcb5;--rule:#d4d7d0;--envelope:#7fa3c7;--envelope-deep:#2f5f8f;--envelope-wash:#e3ecf5;--stamp:#5a3f8f;--caution:#f3e3a6;--caution-edge:#c9a93c;--void:#a3262a;--slip-face:"Frank Ruhl Libre","David Libre",serif;--ui:"Rubik",system-ui,"Arial Hebrew",sans-serif}
*{box-sizing:border-box}
html{font-size:100%}
body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--ui);line-height:1.55}
main,.wrap{max-inline-size:72rem;margin-inline:auto;padding-inline:clamp(1rem,3vw,2rem)}
header.site{background:var(--envelope);border-block-end:1px solid var(--ink);min-block-size:64px}
header.site .wrap{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem;min-block-size:63px}
header.site a{color:var(--ink)}
.brand{display:inline-flex;align-items:center;font-family:var(--slip-face);font-weight:900;font-size:1.5rem;color:var(--ink);text-decoration:none}
footer.site{margin-block-start:3rem;color:var(--muted);font-size:.9rem}
footer.site .wrap{border-block-start:1px solid var(--ink);padding-block:2rem}
h1{font-family:var(--slip-face);font-weight:900;font-size:clamp(2rem,4.5vw,2.9rem);line-height:1.1;margin-block:1.25rem .25rem}
h2{font-family:var(--ui);font-weight:700;font-size:1.25rem;margin-block:2.75rem .75rem}
a{color:var(--envelope-deep);text-underline-offset:.2em}
a:hover{text-decoration-thickness:2px}
::selection{background:var(--envelope);color:var(--ink)}
a,button,select,summary{min-block-size:44px}
a:not(.btn):not(.brand){display:inline-flex;align-items:center}
a,li,dd{overflow-wrap:break-word}
th[scope=row] a{display:inline}
#state{margin-block-start:1.25rem}
#central{margin-block-start:1.75rem}
code,.mono{font-family:ui-monospace,Menlo,Consolas,monospace}
:focus-visible{outline:3px solid var(--envelope-deep);outline-offset:2px}
.muted{color:var(--muted)}.lead{margin-block:0 .5rem;color:var(--muted);font-size:1.05rem}.sr{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip:rect(0 0 0 0)}
.times{font-size:.95rem;color:var(--ink)}
.banner{padding:.6rem 1rem;text-align:center;font-weight:700}
.banner.demo,.banner.synthetic{background:var(--void);color:var(--on-dark);outline:2px dashed var(--on-dark-rule);outline-offset:-6px}
.banner.hist{background:var(--envelope-wash);border:1px solid var(--envelope-deep);text-align:start;font-weight:600}
.notice{padding:.4rem .75rem;font-size:.92rem;margin-block:.4rem;border:1px solid var(--edge);background:var(--slip)}
.notice.warn{background:var(--caution);border-color:var(--caution-edge)}
.scroll{overflow-x:auto;max-inline-size:100%}
table{border-collapse:collapse;inline-size:100%;background:var(--slip);border:1px solid var(--edge)}
table,.metrics dd,.legend,.times,.seg,.stamp{font-variant-numeric:tabular-nums}
th,td{padding:.5rem .6rem;border-block-end:1px solid var(--rule);text-align:start;vertical-align:top}
thead th{font-weight:600;font-size:.85rem;background:var(--slip);border-block-end:2px solid var(--ink)}
tbody th{font-weight:600}
td.cen{color:var(--stamp);font-weight:700}
.btn{display:inline-flex;align-items:center;min-inline-size:44px;padding-inline:.5rem;white-space:nowrap;overflow-wrap:normal}
.sw{display:inline-block;inline-size:12px;block-size:12px;margin-inline-end:.4rem;border:1px solid var(--sw-edge);border-radius:0;vertical-align:-1px;flex:none}
.seatbar{display:flex;gap:2px;padding:3px;inline-size:100%;block-size:3rem;border:1px solid var(--ink);background:var(--slip);overflow:hidden}
.seg{display:flex;align-items:center;justify-content:center;font-family:var(--ui);font-size:.9rem;font-weight:700;min-inline-size:0}
.tray{list-style:none;padding:0;margin-block:1rem 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(10.5rem,1fr));gap:.75rem}
.slip{background:var(--slip);border:1px solid var(--edge);box-shadow:0 1px 0 var(--edge);min-block-size:7.5rem;position:relative;transition:transform 150ms ease-out,border-color 150ms ease-out}
.slip:hover,.slip:focus-within{transform:translateY(-2px);border-color:var(--ink)}
.tray .slip>a,.slip>div{display:block;color:var(--ink);text-decoration:none;padding:.75rem .9rem;min-block-size:7.5rem;position:relative}

.pname{display:block;font-family:var(--slip-face);font-weight:900;font-size:1.3rem;line-height:1.15;padding-block-end:4.5rem}
.stamp{position:absolute;inset-block-end:.6rem;inset-inline-end:.7rem;inline-size:4.25rem;block-size:4.25rem;border:3px solid var(--stamp);border-radius:50%;color:var(--stamp);display:flex;align-items:center;justify-content:center;font-family:var(--ui);font-weight:800;font-size:1.9rem;line-height:1;transform:rotate(-8deg);opacity:.92}
.legend{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.25rem 1rem}
.inline-form{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
select{max-inline-size:100%}
select,button{font:inherit;padding:.3rem .6rem;border:1px solid var(--ink);border-radius:0;background:var(--slip);color:var(--ink);min-inline-size:44px}
button{background:var(--ink);color:var(--slip)}
details>summary{white-space:nowrap;font-family:var(--ui);font-weight:600;cursor:pointer}
.choices,.sortlinks{display:flex;flex-wrap:wrap;gap:.25rem .75rem;align-items:center}
.choices>a,.sortlinks>a{border:1px solid var(--ink);padding:.35rem .9rem;color:var(--ink);text-decoration:none;justify-content:center}
.choices>a+a,.sortlinks>a+a{margin-inline-start:-1px}
.choices>a,.sortlinks>a{margin-inline-end:0}
.choices,.sortlinks{column-gap:0}
.choices>span,.sortlinks>span{margin-inline-end:.75rem}
.sortlinks a[aria-current],.choices a[aria-current]{background:var(--ink);color:var(--slip)}
.party-slip{background:var(--slip);border:1px solid var(--edge);box-shadow:0 1px 0 var(--edge);padding:.5rem clamp(1rem,3vw,1.75rem) 1.25rem;margin-block-start:1.5rem}
.party-slip h1{margin-block-start:.75rem}
.ps-head{display:flex;justify-content:space-between;align-items:center;gap:1rem}
.party-slip .stamp.big{position:static;flex:none;inline-size:5.5rem;block-size:5.5rem;font-size:2.4rem}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);margin-block:1rem;padding-block-start:1px;padding-inline-start:1px}
.metrics>div{background:var(--slip);padding:.75rem 1rem;border:1px solid var(--edge);margin-block-start:-1px;margin-inline-start:-1px}
.metrics dt{font-size:.85rem;color:var(--muted)}.metrics dd{margin:0;font-family:var(--ui);font-size:1.6rem;font-weight:700}
.metrics dd.cen{color:var(--stamp)}
.metrics dd small{display:block;margin-block-start:.25rem;font-size:.8rem;font-weight:400;line-height:1.4;color:var(--muted)}
.chartbox{max-inline-size:100%;overflow-x:auto;direction:ltr}
.chart{inline-size:100%;min-inline-size:36rem;block-size:auto;background:var(--slip);border:1px solid var(--edge)}
.chart text{font:inherit;font-size:13.5px;fill:var(--ink)}.chart .ax{font-weight:700}
.chart .axis{stroke:var(--ink)}.chart .grid{stroke:var(--rule)}
.chart .line{fill:none;stroke:var(--envelope-deep);stroke-width:2.5}.chart .line.syn{stroke-dasharray:6 4;opacity:.65}
.chart .band{fill:var(--envelope);fill-opacity:.35}.chart .bandline{stroke:var(--envelope-deep);stroke-opacity:.35;stroke-width:3}
.chart .dot{fill:var(--envelope-deep)}.chart .bar{fill:var(--envelope)}.chart .bar.hi{fill:var(--stamp);stroke:none}
.sheet{background:var(--slip);border:1px solid var(--edge);padding:clamp(1.25rem,3vw,2.25rem);margin-block-start:1.5rem}
.sheet h2:first-child{margin-block-start:0}
.sheet p,.sheet li{max-inline-size:44rem;line-height:1.7}
.mob{display:none}
.pn{display:flex;align-items:baseline;gap:.4rem}.pn>.sw{flex:none;margin:0}
.banner a,.notice a,p a{display:inline;min-block-size:auto}
@media (max-width:600px){
  details>summary{white-space:normal}
  .mob>summary{white-space:nowrap}
  .choices,.sortlinks{gap:.4rem}
  .choices>a+a,.sortlinks>a+a{margin-inline-start:0}
  .choices>span,.sortlinks>span{flex-basis:100%}
  .chart{min-inline-size:0}
  .chart text{font-size:20px}
  .opt{display:none}
  .mob{display:block}
  th,td{padding:.4rem .35rem;font-size:.95rem}
  h1{font-size:1.85rem}
  .tray{grid-template-columns:repeat(2,1fr);gap:.5rem}
  .slip{min-block-size:4.75rem}
  .slip>a,.slip>div{min-block-size:4.75rem}
  .pname{font-size:1rem;padding-block-end:2.9rem}
  .stamp{inline-size:2.9rem;block-size:2.9rem;font-size:1.3rem}
  .metrics{grid-template-columns:repeat(2,1fr)}
  .mob summary{font-weight:400}
  .party-slip .stamp.big{inline-size:4rem;block-size:4rem;font-size:1.8rem}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
