
@font-face{font-family:Rubik;src:url(fonts/rubik.woff2) format("woff2");font-weight:300 900;font-display:swap}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:Rubik,"Noto Sans Hebrew",Arial,sans-serif;background:#fff8ec;color:#26314a;overflow-x:hidden}
[hidden]{display:none!important}
a{color:inherit}
#home{max-width:1100px;margin:0 auto;padding:16px 14px 30px}
.hero{display:flex;align-items:center;gap:14px;background:linear-gradient(135deg,#ffe8b8,#ffd1c1 60%,#cfe8ff);border-radius:24px;padding:16px 18px;box-shadow:0 6px 20px #e8a25c33}
.hlogo{width:72px;height:72px;flex:none;border-radius:50%}
.hero h1{margin:0 0 4px;font-size:clamp(26px,6vw,42px);font-weight:800;color:#3a2a6b}
.hero p{margin:0;font-size:clamp(16px,3.8vw,20px);line-height:1.45}
.cards{display:grid;grid-template-columns:1fr;gap:18px;margin:20px 0}
@media(min-width:760px){.cards{grid-template-columns:repeat(3,1fr)}}
.dcard{background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 6px 22px #0001;border-top:8px solid var(--c);display:flex;flex-direction:column}
.dimg{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:#eee}
.dimg img{width:100%;height:100%;object-fit:cover;display:block}
.dchip{position:absolute;top:10px;right:10px;background:#fff;border-radius:99px;padding:4px 12px;font-weight:700;font-size:17px;box-shadow:0 2px 8px #0002}
.dbody{padding:14px 16px 18px;display:flex;flex-direction:column;flex:1}
.dbody h2{margin:0 0 4px;font-size:26px;font-weight:800}
.dbody p{margin:0 0 4px;font-size:18px;line-height:1.4}
.cnt{color:#6b7280;font-size:16px!important}
.btns{display:flex;flex-direction:column;gap:10px;margin-top:auto;padding-top:12px}
.btn{display:block;text-align:center;text-decoration:none;font-weight:700;font-size:19px;padding:13px;border-radius:14px;border:2px solid var(--c);color:#26314a;background:#fff}
.btn.pri{background:var(--c);color:#fff;text-shadow:0 1px 2px #0004}
.tips{background:#fff;border-radius:20px;padding:12px 18px;box-shadow:0 4px 14px #0001}
.tips h2{font-size:22px;margin:6px 0}
.tips ul{padding:0 18px 0 0;margin:0;font-size:18px;line-height:1.6}
.note{color:#6b7280;font-size:15px}
.foot{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:22px;font-size:18px;font-weight:600}
.foot img{width:84px;height:84px;border-radius:50%}

/* viewer */
body.inview{background:#1d2238;overflow:hidden}
#viewer{position:fixed;inset:0;display:flex;flex-direction:column;background:#1d2238}
#vbar{display:flex;align-items:center;gap:10px;padding:6px 10px;color:#fff;flex:none}
#vtitle{flex:1;font-weight:700;font-size:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#vcount{font-size:16px;opacity:.85}
.vb{background:#ffffff1f;border:0;color:#fff;font-size:22px;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;text-decoration:none;cursor:pointer}
#stagewrap{flex:1;display:flex;align-items:center;justify-content:center;overflow:auto;-webkit-overflow-scrolling:touch}
body.port #stagewrap{align-items:stretch}
#stage{container-type:inline-size;position:relative}
#vnav{display:flex;gap:10px;padding:8px 10px calc(8px + env(safe-area-inset-bottom));flex:none}
#vnav button{flex:1;font:inherit;font-size:20px;font-weight:700;padding:12px;border-radius:14px;border:0;background:#ffb703;color:#26314a;cursor:pointer}
#vnav button:disabled{opacity:.35}
:fullscreen #vnav{opacity:.25}:fullscreen #vnav:hover{opacity:1}

/* slide (landscape: units = cqw of 16:9 stage) */
.slide{position:relative;width:100%;height:100%;background:#fffaf0;overflow:hidden;border-radius:1.2cqw;color:#26314a;line-height:1.35}
.slide::before{content:"";position:absolute;inset:0 0 auto 0;height:1cqw;background:var(--c);z-index:3}
.slide h1,.slide h2{font-weight:800;margin:0 0 .4em;color:#2b2160}
.slide h2{font-size:4.1cqw}
.slide ul,.slide ol{margin:0;padding:0;list-style:none}
.pic{display:block;width:100%;height:100%;object-fit:cover}
.corner{position:absolute;left:1.6cqw;bottom:1.6cqw;width:6.2cqw;height:6.2cqw;border-radius:50%;z-index:4;box-shadow:0 .2cqw .8cqw #0002}
.pn{position:absolute;right:2cqw;bottom:1.3cqw;font-size:1.4cqw;color:#8a8fa3;z-index:4}
.kind{align-self:flex-start;display:inline-block;background:var(--c);color:#fff;font-weight:700;font-size:1.8cqw;border-radius:99px;padding:.3cqw 1.6cqw;margin-bottom:1cqw;text-shadow:0 1px 2px #0003}
.qbox{margin-top:1.6cqw;background:#fff3c4;border:.25cqw dashed #e0a100;border-radius:1.4cqw;padding:1.2cqw 1.6cqw;font-size:2.15cqw;font-weight:600}
.qic{margin-left:.6cqw}
.full{position:absolute;top:2.4cqw;bottom:2.4cqw;left:2.4cqw;width:55%;border-radius:2.2cqw;overflow:hidden;box-shadow:0 .6cqw 2cqw #0002}
.t-title,.t-end{background:linear-gradient(160deg,#fff6df,#ffe9dc 60%,#e6f2ff)}
.shade{position:absolute;inset:0;background:linear-gradient(270deg,#fffaf0f2 0%,#fffaf0d9 36%,#fffaf000 62%)}
.shade.end{background:linear-gradient(270deg,#fffaf0f5 0%,#fffaf0e0 42%,#fffaf000 70%)}
.titlebox,.endbox{position:absolute;top:0;bottom:0;right:0;width:42%;padding:4cqw 3.6cqw 3cqw 1cqw;display:flex;flex-direction:column;justify-content:center;z-index:2}
.chip{align-self:flex-start;background:#fff;border:.3cqw solid var(--c);border-radius:99px;padding:.4cqw 1.8cqw;font-weight:700;font-size:2.2cqw;margin-bottom:1.4cqw}
.titlebox h1{font-size:6cqw;line-height:1.08;margin:0 0 1cqw}
.sub{font-size:2.6cqw;margin:0 0 1.2cqw;font-weight:500}
.date{font-size:2cqw;margin:0 0 2cqw;color:#4b5563}
.credit{display:flex;align-items:center;gap:1.4cqw;font-size:2.1cqw;font-weight:700}
.clogo{width:9cqw;height:9cqw;border-radius:50%;flex:none;box-shadow:0 .2cqw 1cqw #0002}
.endbox h2{font-size:4.4cqw}
.sum li{font-size:2.4cqw;margin:.5cqw 0;font-weight:600}
.task{margin:1.6cqw 0 2cqw;background:#fff;border-right:.6cqw solid var(--c);border-radius:1cqw;padding:1cqw 1.4cqw;font-size:2.1cqw;box-shadow:0 .2cqw 1cqw #0001}
.split{display:flex;height:100%}
.split .txt{width:52%;padding:4.5cqw 4cqw 3cqw;display:flex;flex-direction:column;justify-content:center}
.split .imgcol{width:48%;padding:2.6cqw 2.6cqw 2.6cqw 0;padding-left:2.6cqw}
.split .imgcol .pic{border-radius:2cqw;box-shadow:0 .6cqw 2cqw #0002}
.split li,.bigs li{font-size:2.75cqw;margin:0 0 1.1cqw;padding-right:2.4cqw;position:relative}
.split li::before,.bigs li::before{content:"";position:absolute;right:0;top:.55em;width:1.1cqw;height:1.1cqw;border-radius:50%;background:var(--c)}
.pad{height:100%;padding:4.2cqw 5cqw 3cqw;display:flex;flex-direction:column;justify-content:center}
.lead{font-size:2.6cqw;margin:-.6cqw 0 2cqw;font-weight:500}
.grid{display:grid;gap:1.6cqw;grid-template-columns:repeat(3,1fr)}
.grid.g4,.grid.g8{grid-template-columns:repeat(4,1fr)}
.card{background:#fff;border-radius:1.8cqw;padding:1.6cqw 1.2cqw;text-align:center;box-shadow:0 .4cqw 1.4cqw #0000000f;border-bottom:.5cqw solid var(--c)}
.em{font-size:4.4cqw;line-height:1.1}
.ct{font-size:2.4cqw;font-weight:800;margin-top:.5cqw}
.cd{font-size:1.75cqw;margin-top:.4cqw;color:#4b5563}
.g8 .card{padding:1.2cqw}.g8 .em{font-size:3.6cqw}.g8 .ct{font-size:2.1cqw}
.qslide{background:radial-gradient(circle at 15% 20%,#fff3c4 0,#fffaf0 55%)}
.bigemoji{position:absolute;left:6cqw;top:50%;transform:translateY(-50%);font-size:17cqw;opacity:.9}
.qslide h2{font-size:4.6cqw;max-width:72%}
.qlines li{font-size:2.8cqw;margin:0 0 1.2cqw;max-width:72%;background:#fff;border-radius:1.2cqw;padding:1cqw 1.6cqw;box-shadow:0 .2cqw .9cqw #0000000d}
.tf,.quiz{counter-reset:n}
.tf li,.quiz li{counter-increment:n;display:flex;align-items:center;gap:1.6cqw;background:#fff;border-radius:1.4cqw;padding:1.2cqw 1.6cqw;margin-bottom:1.2cqw;box-shadow:0 .2cqw .9cqw #0000000f}
.tf li::before,.quiz li::before{content:counter(n);flex:none;width:3.6cqw;height:3.6cqw;border-radius:50%;background:var(--c);color:#fff;font-weight:800;font-size:2cqw;display:grid;place-items:center}
.st{flex:1;font-size:2.6cqw;font-weight:600}
.rv{flex:none;width:34%;font:inherit;font-size:1.9cqw;border:.2cqw dashed #b8bccb;background:#f7f7fb;border-radius:1cqw;padding:.8cqw 1cqw;cursor:pointer;text-align:center;color:#26314a}
.quiz .rv{width:28%}
.rv .ans{display:none;font-weight:800}
.rv.open .hid{display:none}.rv.open .ans{display:inline}
.rv.open{border-style:solid;background:#fff}
.ans.yes{color:#15803d}.ans.no{color:#c2410c}
.ans small{font-weight:500;color:#4b5563;font-size:.85em}
.bigs{flex-direction:row;align-items:center;gap:4cqw}
.num{flex:none;width:36%;text-align:center;font-size:15cqw;font-weight:900;color:var(--c);text-shadow:.5cqw .5cqw 0 #2b216022;line-height:1}
.bt{flex:1}

/* print: answers visible */
.printmode .rv .hid{display:none}.printmode .rv .ans{display:inline}.printmode .rv{border-style:solid;background:#fff}

/* portrait (phone): slide flows, units = cqw of full-width stage */
body.port .slide{height:auto;min-height:100%;border-radius:0;padding-bottom:16cqw}
body.port .slide h2{font-size:7.6cqw}
body.port .full{position:relative;inset:auto;top:auto;left:auto;bottom:auto;width:auto;margin:4cqw 4cqw 0;aspect-ratio:16/9;border-radius:4cqw}
body.port .shade{display:none}
body.port .titlebox,body.port .endbox{position:relative;width:100%;padding:5cqw 5cqw 2cqw}
body.port .chip{font-size:4.4cqw;padding:.8cqw 3.4cqw}
body.port .titlebox h1{font-size:11cqw}
body.port .sub{font-size:5.2cqw}
body.port .date{font-size:4.2cqw}
body.port .credit{font-size:4.4cqw;gap:3cqw}
body.port .clogo{width:18cqw;height:18cqw}
body.port .endbox h2{font-size:8.4cqw}
body.port .sum li{font-size:5cqw}
body.port .task{font-size:4.6cqw;padding:3cqw}
body.port .split{flex-direction:column-reverse;height:auto}
body.port .split .txt,body.port .split .imgcol{width:100%}
body.port .split .imgcol{padding:4cqw 4cqw 0;aspect-ratio:auto}
body.port .split .imgcol .pic{aspect-ratio:16/9;height:auto;border-radius:4cqw}
body.port .split .txt{padding:5cqw}
body.port .split li,body.port .bigs li{font-size:5cqw;padding-right:5cqw;margin-bottom:2.4cqw}
body.port .split li::before,body.port .bigs li::before{width:2.4cqw;height:2.4cqw}
body.port .pad{height:auto;padding:7cqw 5cqw 5cqw}
body.port .kind{font-size:4cqw;padding:.8cqw 3.4cqw;margin-bottom:2.4cqw}
body.port .lead{font-size:5cqw}
body.port .grid{grid-template-columns:repeat(2,1fr)!important;gap:3cqw}
body.port .grid.g3{grid-template-columns:1fr!important}
body.port .grid.g3 .card{display:grid;grid-template-columns:14cqw 1fr;text-align:right;align-items:center;column-gap:3cqw}
body.port .grid.g3 .em{grid-row:span 2;text-align:center}
body.port .card{border-radius:4cqw;padding:3.4cqw;border-bottom-width:1.2cqw}
body.port .em{font-size:10cqw}
body.port .ct{font-size:5.2cqw}
body.port .cd{font-size:4.1cqw}
body.port .qbox{font-size:4.8cqw;padding:3cqw 4cqw;border-radius:3cqw;margin-top:4cqw;border-width:.6cqw}
body.port .bigemoji{position:static;transform:none;font-size:18cqw;text-align:center}
body.port .qslide h2,body.port .qlines li{max-width:100%}
body.port .qlines li{font-size:5cqw;padding:3cqw 4cqw;border-radius:3cqw;margin-bottom:3cqw}
body.port .tf li,body.port .quiz li{flex-wrap:wrap;padding:3cqw 4cqw;border-radius:3cqw;gap:3cqw;margin-bottom:3cqw}
body.port .tf li::before,body.port .quiz li::before{width:8cqw;height:8cqw;font-size:4.4cqw}
body.port .st{font-size:5cqw}
body.port .rv,body.port .quiz .rv{width:100%;font-size:4.4cqw;padding:2.4cqw;border-radius:2.4cqw;border-width:.5cqw}
body.port .bigs{flex-direction:column;gap:2cqw}
body.port .num{width:100%;font-size:26cqw}
body.port .corner{width:13cqw;height:13cqw;left:3cqw;bottom:3cqw}
body.port .pn{font-size:3.4cqw;right:4cqw;bottom:4cqw}
body.port .slide::before{height:1.6cqw}

.num.long{font-size:10.5cqw}
body.port .num.long{font-size:20cqw}
.endbox{width:44%!important}
.endbox .sum li{font-size:2.2cqw}
.endbox .credit{font-size:1.9cqw}

.printmode .slide *{box-shadow:none!important;text-shadow:none!important}
.printmode .card,.printmode .tf li,.printmode .quiz li,.printmode .qlines li{border:.15cqw solid #e6e1d6}
.printmode .qslide{background:#fff8e1}
.printmode .t-title,.printmode .t-end{background:#fff3e3}
.printmode .num{text-shadow:none}

body.port #stage{min-height:100%;display:flex;flex-direction:column}body.port #stage .slide{flex:1}

/* ===== interactive activities (v3) ===== */
.slide{--u:1cqw}
body.port .slide{--u:2.2cqw}
.inter .corner{top:1.8cqw;bottom:auto;width:5.4cqw;height:5.4cqw}
body.port .inter .corner{top:3cqw;bottom:auto;width:11cqw;height:11cqw}
.pad.actp{justify-content:flex-start;overflow-y:auto;overscroll-behavior:contain;padding-top:3.4cqw;padding-bottom:2.4cqw}
.pad.actp>:first-child{margin-top:auto}.pad.actp>:last-child{margin-bottom:auto}
.actp h2{font-size:3.5cqw;margin-bottom:1cqw;padding-left:7cqw}
body.port .actp h2{font-size:7cqw;padding-left:12cqw}
.abody{display:grid;grid-template-columns:31% 1fr;gap:2.4cqw;align-items:start;min-height:0}
.abody.nol{grid-template-columns:1fr}
body.port .abody{grid-template-columns:1fr;gap:4cqw}
.ainst li{font-size:calc(var(--u)*2.05);background:#fff;border-radius:calc(var(--u)*1.2);padding:calc(var(--u)*.9) calc(var(--u)*1.3);margin-bottom:calc(var(--u)*1);box-shadow:0 .2cqw .9cqw #0000000d;border-right:calc(var(--u)*.5) solid var(--c)}
body.port .ainst li{font-size:4.6cqw;padding:2.6cqw 3.4cqw;border-radius:3cqw}
.acol{min-width:0}
.ap{font-size:calc(var(--u)*2)}
.ap+.ap{margin-top:calc(var(--u)*1.6)}
.ap button{font-family:inherit;color:#26314a;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.ap button:disabled{cursor:default}
.ob{font-size:calc(var(--u)*1.9);font-weight:700;background:#fff;border:calc(var(--u)*.25) solid #d9dbe6;border-radius:calc(var(--u)*1.2);padding:calc(var(--u)*.8) calc(var(--u)*1.4);min-height:calc(var(--u)*4.4);line-height:1.2}
.ob:not(:disabled):active{transform:scale(.97)}
.ob.on{background:#fff3c4;border-color:var(--c);box-shadow:0 0 0 calc(var(--u)*.3) var(--c) inset}
.ob.ok{background:#dcfce7;border-color:#16a34a;color:#14532d}
.ob.bad{background:#fee2e2;border-color:#dc2626;color:#7f1d1d}
.ob.big{font-size:calc(var(--u)*2.1);padding:calc(var(--u)*1.1) calc(var(--u)*1.6)}
.sbtn{font-size:calc(var(--u)*1.8);font-weight:800;background:var(--c);color:#26314a;border:0;border-radius:99px;padding:calc(var(--u)*.8) calc(var(--u)*2);min-height:calc(var(--u)*4.2);box-shadow:0 .2cqw .6cqw #0002}
.sbtn.lite{background:#eef0f6;box-shadow:none}
.sbtn:disabled{opacity:.4}
.chipb{font-size:calc(var(--u)*1.6);background:#fff;border:calc(var(--u)*.2) solid #e0a100;border-radius:99px;padding:calc(var(--u)*.4) calc(var(--u)*1.2);margin:calc(var(--u)*.3);min-height:calc(var(--u)*3.4)}
.abtns{display:flex;flex-wrap:wrap;align-items:center;gap:calc(var(--u)*1.2);margin-top:calc(var(--u)*1.2)}
.tot{flex:1;font-size:calc(var(--u)*1.8);color:#4b5563;font-weight:600;min-width:30%}
.fb{font-size:calc(var(--u)*1.9);font-weight:700;margin-top:calc(var(--u)*1.1);border-radius:calc(var(--u)*1.2);padding:0}
.fb:not(:empty){padding:calc(var(--u)*.9) calc(var(--u)*1.4);background:#eef4ff}
.fb.good{background:#dcfce7;color:#14532d}.fb.bad{background:#fee2e2;color:#7f1d1d}
.aft{font-size:calc(var(--u)*1.85);margin-top:calc(var(--u)*.9);background:#fff8e1;border-radius:calc(var(--u)*1);padding:calc(var(--u)*.7) calc(var(--u)*1.2);font-weight:600}
.note{font-size:calc(var(--u)*1.5);color:#6b7280;margin-top:calc(var(--u)*.8)}
.sumbox{background:#fff;border-radius:calc(var(--u)*1.4);padding:calc(var(--u)*1.2) calc(var(--u)*1.6);border:calc(var(--u)*.25) solid var(--c);font-size:calc(var(--u)*2)}
.sumrow{margin:calc(var(--u)*.4) 0}
.rksum{list-style:decimal!important;padding-right:calc(var(--u)*3)!important;margin-top:calc(var(--u)*.6)!important}
.rksum li{margin:calc(var(--u)*.2) 0}
/* write box */
.wb{margin-top:calc(var(--u)*1.2)}
.wtog{font:inherit;font-size:calc(var(--u)*1.8);font-weight:800;background:#fff;border:calc(var(--u)*.25) dashed var(--c);border-radius:99px;padding:calc(var(--u)*.6) calc(var(--u)*2);min-height:calc(var(--u)*4);cursor:pointer;color:#26314a}
.wb .warea{display:none}.wb.open .warea{display:block}.wb.open .wtog{background:#fff3c4}
.wb.open .wtog+.warea{margin-top:calc(var(--u)*1)}
.wfs.two{display:grid;grid-template-columns:1fr 1fr;gap:calc(var(--u)*1.2)}
body.port .wfs.two{grid-template-columns:1fr}
.wf{display:block}
.wl{display:block;font-weight:800;font-size:calc(var(--u)*1.85);margin-bottom:calc(var(--u)*.5)}
.wf textarea,.wadd input{width:100%;font:inherit;font-size:max(16px,calc(var(--u)*1.9));border:calc(var(--u)*.25) solid #d9dbe6;border-radius:calc(var(--u)*1.2);padding:calc(var(--u)*.9) calc(var(--u)*1.2);background:#fff;color:#26314a;resize:vertical;direction:rtl}
.wf textarea:focus,.wadd input:focus{outline:none;border-color:var(--c);box-shadow:0 0 0 calc(var(--u)*.3) #ffb70355}
.whints{font-size:calc(var(--u)*1.65);color:#6b4f00;background:#fff8e1;border-radius:calc(var(--u)*1);padding:calc(var(--u)*.6) calc(var(--u)*1.1);margin:calc(var(--u)*.7) 0}
.wst{margin:calc(var(--u)*.4) 0}
.wbtns{display:flex;align-items:center;gap:calc(var(--u)*1);margin-top:calc(var(--u)*.7);flex-wrap:wrap}
.wsaved{font-size:calc(var(--u)*1.4);color:#9ca3af}
.qbox+.wb,.task+.wb{margin-top:calc(var(--u)*1)}
/* choose */
.chg{display:grid;grid-template-columns:repeat(3,1fr);gap:calc(var(--u)*1.4)}
body.port .chg{grid-template-columns:1fr}
.chc{background:#fff;border-radius:calc(var(--u)*1.6);padding:calc(var(--u)*1.2);text-align:center;border-bottom:calc(var(--u)*.5) solid var(--c);box-shadow:0 .3cqw 1cqw #0000000f}
.che{font-size:calc(var(--u)*4)}.cht{font-weight:800;font-size:calc(var(--u)*2.1);margin:calc(var(--u)*.4) 0 calc(var(--u)*.8)}
.cho{display:flex;gap:calc(var(--u)*.8);justify-content:center;flex-wrap:wrap}.cho .ob{flex:1}
body.port .chc{display:grid;grid-template-columns:auto 1fr;align-items:center;text-align:right;column-gap:3cqw}
body.port .che{grid-row:span 2}body.port .cht{margin:0}
/* vote */
.vq{font-weight:800;font-size:calc(var(--u)*2.1);margin-bottom:calc(var(--u)*.8)}.vq small{font-weight:500;color:#6b7280;font-size:.75em}
.vrow{display:flex;gap:calc(var(--u)*.8);margin-bottom:calc(var(--u)*.8)}
.vbtn{position:relative;flex:1;display:flex;align-items:center;justify-content:space-between;gap:calc(var(--u)*1);font-size:calc(var(--u)*2.2);font-weight:800;background:#fff;border:calc(var(--u)*.25) solid #d9dbe6;border-radius:calc(var(--u)*1.4);padding:calc(var(--u)*1) calc(var(--u)*1.6);min-height:calc(var(--u)*5);overflow:hidden;text-align:right}
.vbar{position:absolute;inset:0 0 0 auto;background:color-mix(in srgb,var(--c) 35%,#fff);transition:width .3s;z-index:0}
.vl,.vc{position:relative;z-index:1}.vc{font-size:1.2em;min-width:2ch;text-align:center}
.vmin{flex:none;width:calc(var(--u)*5.5);font-size:calc(var(--u)*1.7);font-weight:700;background:#f3f4f6;border:0;border-radius:calc(var(--u)*1.2)}
.vrow.win .vbtn{border-color:#16a34a;box-shadow:0 0 0 calc(var(--u)*.3) #16a34a inset}
/* words */
.wadd{display:flex;gap:calc(var(--u)*1)}.wadd input{flex:1}
.wall{min-height:calc(var(--u)*7);background:#fff;border:calc(var(--u)*.25) dashed #d9dbe6;border-radius:calc(var(--u)*1.4);padding:calc(var(--u)*1);margin-top:calc(var(--u)*1);display:flex;flex-wrap:wrap;gap:calc(var(--u)*.8);align-content:flex-start}
.wchip{background:color-mix(in srgb,var(--c) 30%,#fff);border-radius:99px;padding:calc(var(--u)*.5) calc(var(--u)*1.4);font-weight:800;font-size:calc(var(--u)*2.1)}
.wchip:nth-child(3n+2){font-size:calc(var(--u)*2.6)}.wchip:nth-child(4n+3){background:#dbeafe}
.wempty{color:#9ca3af;font-size:calc(var(--u)*1.7)}
/* pick */
.pmodes{display:flex;gap:calc(var(--u)*1);margin-bottom:calc(var(--u)*1)}
.pm{flex:1;font-size:calc(var(--u)*1.9);font-weight:800;background:#fff;border:calc(var(--u)*.25) solid #d9dbe6;border-radius:99px;padding:calc(var(--u)*.7);min-height:calc(var(--u)*4.2)}
.pm.on{background:var(--c);border-color:var(--c)}
.pkg{display:grid;grid-template-columns:repeat(3,1fr);gap:calc(var(--u)*1)}
.pkg.g8{grid-template-columns:repeat(4,1fr)}
body.port .pkg,body.port .pkg.g8{grid-template-columns:repeat(2,1fr)}
.pkc{position:relative;display:flex;flex-direction:column;align-items:center;gap:calc(var(--u)*.3);background:#fff;border:calc(var(--u)*.25) solid #e5e7eb;border-radius:calc(var(--u)*1.4);padding:calc(var(--u)*1) calc(var(--u)*.6);font-size:calc(var(--u)*1.9);font-weight:800;min-height:calc(var(--u)*7)}
.pkc.on{border-color:var(--c);background:#fff8e1;box-shadow:0 0 0 calc(var(--u)*.3) var(--c) inset}
.pke{font-size:calc(var(--u)*3.2);line-height:1}
.pkbadge{position:absolute;top:calc(var(--u)*.4);left:calc(var(--u)*.6);font-size:calc(var(--u)*2.2)}
.pkb{font-size:calc(var(--u)*1.6);color:#6b7280}
/* rank */
.rkwho{font-weight:800;font-size:calc(var(--u)*1.9);margin-bottom:calc(var(--u)*.6)}
.rk li{display:flex;align-items:center;gap:calc(var(--u)*1);background:#fff;border-radius:calc(var(--u)*1.2);padding:calc(var(--u)*.55) calc(var(--u)*1);margin-bottom:calc(var(--u)*.7);box-shadow:0 .2cqw .8cqw #0000000f;border-right:calc(var(--u)*.5) solid var(--c)}
.rkn{flex:none;width:calc(var(--u)*3.6);height:calc(var(--u)*3.6);border-radius:50%;background:var(--c);display:grid;place-items:center;font-weight:900;font-size:calc(var(--u)*1.9)}
.rke{font-size:calc(var(--u)*2.6)}.rkt{flex:1;font-size:calc(var(--u)*1.95)}.rkt small{color:#6b7280;font-weight:500}
.rkb{flex:none;width:calc(var(--u)*4.6);height:calc(var(--u)*4.2);font-size:calc(var(--u)*1.9);background:#eef0f6;border:0;border-radius:calc(var(--u)*1)}
.rkb:disabled{opacity:.3}
.rk.pr .rkn{background:#fff;border:.15cqw solid #9ca3af;color:#9ca3af}
/* tables */
.ptab{width:100%;border-collapse:collapse;background:#fff;font-size:calc(var(--u)*1.8);border-radius:calc(var(--u)*1);overflow:hidden}
.ptab th,.ptab td{border:.12cqw solid #e5e7eb;padding:calc(var(--u)*.55) calc(var(--u)*1);text-align:right}
.ptab th{background:color-mix(in srgb,var(--c) 25%,#fff)}
.ptab td.c,.cmp td:not(:first-child),.cmp th:not(:first-child){text-align:center}
.cmp tr.same td{background:#dcfce7}
/* mcq & tf */
.mq,.tfx,.disc{counter-reset:n}
.mq>li,.tfx>li,.disc>li{counter-increment:n;position:relative;background:#fff;border-radius:calc(var(--u)*1.3);padding:calc(var(--u)*.8) calc(var(--u)*5) calc(var(--u)*.8) calc(var(--u)*1.2);margin-bottom:calc(var(--u)*.8);box-shadow:0 .2cqw .9cqw #0000000f}
.mq>li::before,.tfx>li::before,.disc>li::before{content:counter(n);position:absolute;right:calc(var(--u)*1.1);top:calc(var(--u)*.8);width:calc(var(--u)*3);height:calc(var(--u)*3);border-radius:50%;background:var(--c);color:#fff;font-weight:800;font-size:calc(var(--u)*1.7);display:grid;place-items:center}
.mq>li.right,.tfx>li.right{box-shadow:0 0 0 calc(var(--u)*.25) #16a34a inset}
.mq>li.wrong,.tfx>li.wrong{box-shadow:0 0 0 calc(var(--u)*.25) #dc2626 inset}
.mqq{font-size:calc(var(--u)*2);font-weight:700;margin-bottom:calc(var(--u)*.6)}
.mqo,.tfb{display:flex;flex-wrap:wrap;gap:calc(var(--u)*.7)}
.mqo .ob,.tfb .ob{flex:1 1 auto;min-width:calc(var(--u)*9);font-size:calc(var(--u)*1.75);min-height:calc(var(--u)*3.8);padding:calc(var(--u)*.5) calc(var(--u)*1)}
.tfx>li{display:flex;align-items:center;flex-wrap:wrap;gap:calc(var(--u)*1)}
.tfx .st{flex:1 1 55%;font-size:calc(var(--u)*1.95)}
.tfb{flex:1 1 30%}
body.port .tfx .st,body.port .tfb{flex-basis:100%}
.ex{flex-basis:100%;font-size:calc(var(--u)*1.7);margin-top:calc(var(--u)*.5);color:#374151}
.blank{display:inline-block;min-width:4em;border-bottom:.2cqw solid #9ca3af;text-align:center}.blank.ok{color:#15803d;border-color:#16a34a}
.pbox{display:inline-block;border:.15cqw solid #d1d5db;border-radius:calc(var(--u)*.8);padding:calc(var(--u)*.3) calc(var(--u)*.9);margin:calc(var(--u)*.2);background:#fff;font-size:calc(var(--u)*1.7)}
.pbox.ok{border-color:#16a34a;color:#14532d;background:#f0fdf4;font-weight:700}
/* sort */
.srtcur{background:#fff;border-radius:calc(var(--u)*1.6);padding:calc(var(--u)*1.2) calc(var(--u)*1.6);text-align:center;border:calc(var(--u)*.3) solid var(--c);box-shadow:0 .3cqw 1cqw #0000001a}
.srtn{font-size:calc(var(--u)*1.5);color:#6b7280}
.srtt{font-size:calc(var(--u)*2.4);font-weight:800;margin:calc(var(--u)*.4) 0 calc(var(--u)*1)}
.srtb{display:flex;gap:calc(var(--u)*1)}.srtb .ob{flex:1}
.bks{display:grid;grid-template-columns:1fr 1fr;gap:calc(var(--u)*1);margin-top:calc(var(--u)*1.1)}
.bk{background:#f8fafc;border:calc(var(--u)*.2) dashed #cbd5e1;border-radius:calc(var(--u)*1.2);padding:calc(var(--u)*.7);min-height:calc(var(--u)*5)}
.bkh{font-weight:800;font-size:calc(var(--u)*1.8);margin-bottom:calc(var(--u)*.4)}
.bki{font-size:calc(var(--u)*1.6);background:#fff;border-radius:calc(var(--u)*.8);padding:calc(var(--u)*.3) calc(var(--u)*.8);margin-top:calc(var(--u)*.4);border-right:calc(var(--u)*.4) solid #16a34a}
.bki.fix{border-right-color:#f59e0b}
.srt td:first-child{width:60%}
/* match */
.mt{display:grid;grid-template-columns:38% 1fr;gap:calc(var(--u)*1.2)}
.mtc{display:flex;flex-direction:column;gap:calc(var(--u)*.7)}
.mtb{font-size:calc(var(--u)*1.75);font-weight:700;background:#fff;border:calc(var(--u)*.25) solid #d9dbe6;border-radius:calc(var(--u)*1.1);padding:calc(var(--u)*.6) calc(var(--u)*1);min-height:calc(var(--u)*4);text-align:right;line-height:1.25}
.mtb.t{font-weight:800}
.mtb.sel{border-color:var(--c);background:#fff3c4;box-shadow:0 0 0 calc(var(--u)*.3) var(--c) inset}
.mtb.ok{background:color-mix(in srgb,var(--mc) 40%,#fff);border-color:var(--mc);color:#1f2937}
.mtb.badf{animation:shk .35s;border-color:#dc2626}
@keyframes shk{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
.mt.pr{grid-template-columns:34% 1fr}
.mtl{list-style:decimal!important;padding-right:calc(var(--u)*2.6)!important;font-weight:800;font-size:calc(var(--u)*1.8)}
.mtl li,.mtr li{margin-bottom:calc(var(--u)*.6);background:#fff;border-radius:calc(var(--u)*.8);padding:calc(var(--u)*.35) calc(var(--u)*.8)}
.mtr li{font-size:calc(var(--u)*1.7)}
.mtbox{display:inline-block;width:calc(var(--u)*2.6);text-align:center;border:.15cqw solid #9ca3af;border-radius:calc(var(--u)*.5);margin-left:calc(var(--u)*.8);color:#9ca3af;font-weight:700}
/* sim */
.cands{display:grid;grid-template-columns:repeat(3,1fr);gap:calc(var(--u)*1)}
body.port .cands{grid-template-columns:1fr}
.cand{background:#fff;border-radius:calc(var(--u)*1.4);padding:calc(var(--u)*1);text-align:center;display:flex;flex-direction:column;gap:calc(var(--u)*.3);border-bottom:calc(var(--u)*.5) solid var(--c);font-size:calc(var(--u)*1.9)}
.cand small{font-size:calc(var(--u)*1.6);color:#4b5563}
.cde{font-size:calc(var(--u)*4)}
.booth{background:#2b2160;color:#fff;border-radius:calc(var(--u)*1.6);padding:calc(var(--u)*1.4);text-align:center}
.bt1,.slip{font-size:calc(var(--u)*2.2);font-weight:800;margin-bottom:calc(var(--u)*1)}
.bt1 small,.slip small{font-weight:500;font-size:.75em;opacity:.85}
.cvote{display:flex;flex-direction:column;gap:calc(var(--u)*.8)}
.booth .abtns{justify-content:center}
.ballot{background:#fff;border:.15cqw dashed #9ca3af;border-radius:calc(var(--u)*1);padding:calc(var(--u)*.8);margin-top:calc(var(--u)*1);font-weight:700}
.vbtn.st{cursor:default}
/* scen */
.scn{display:flex;flex-direction:column;gap:calc(var(--u)*.8)}
.scb{display:flex;flex-wrap:wrap;align-items:center;gap:calc(var(--u)*1);background:#fff;border:calc(var(--u)*.25) solid #d9dbe6;border-radius:calc(var(--u)*1.3);padding:calc(var(--u)*.8) calc(var(--u)*1.2);font-size:calc(var(--u)*1.9);text-align:right;min-height:calc(var(--u)*4.4)}
.scb.on{border-color:var(--c);background:#fff8e1}
.sce{font-size:calc(var(--u)*2.6)}
.scr{flex-basis:100%;font-size:calc(var(--u)*1.75);color:#374151;font-weight:500;background:#fff;border-radius:calc(var(--u)*.8);padding:calc(var(--u)*.5) calc(var(--u)*.8)}
.scn.pr li{font-size:calc(var(--u)*1.9);background:#fff;border-radius:calc(var(--u)*1);padding:calc(var(--u)*.6) calc(var(--u)*1);margin-bottom:calc(var(--u)*.6)}
/* coalition */
.meter{position:relative;height:calc(var(--u)*4.4);background:#eef0f6;border-radius:99px;overflow:hidden;margin-bottom:calc(var(--u)*1.2)}
.mfill{position:absolute;inset:0 0 0 auto;background:#f59e0b;transition:width .3s}.mfill.ok{background:#16a34a}
.m61{position:absolute;top:0;bottom:0;right:50.83%;border-right:calc(var(--u)*.35) dashed #26314a}
.m61 span{position:absolute;top:0;right:calc(var(--u)*.4);font-size:calc(var(--u)*1.3);font-weight:800}
.mtx{position:relative;text-align:center;line-height:calc(var(--u)*4.4);font-weight:900;font-size:calc(var(--u)*2.1)}
.cl{display:grid;grid-template-columns:repeat(3,1fr);gap:calc(var(--u)*.8)}
body.port .cl{grid-template-columns:repeat(2,1fr)}
.clb{font-size:calc(var(--u)*1.75);font-weight:700;background:#fff;border:calc(var(--u)*.25) solid #d9dbe6;border-radius:calc(var(--u)*1.2);padding:calc(var(--u)*.6);min-height:calc(var(--u)*4.4);display:flex;align-items:center;justify-content:center;gap:calc(var(--u)*.6);flex-wrap:wrap}
.clb b{background:#eef0f6;border-radius:99px;padding:0 calc(var(--u)*.8)}
.clb.on{background:#dcfce7;border-color:#16a34a}
.cl.pr .clb{min-height:0}
/* discussion */
.disc .st{font-size:calc(var(--u)*2.1);font-weight:700}
.dh{font-size:calc(var(--u)*1.65);color:#6b4f00;margin-top:calc(var(--u)*.3)}
.disc .wb{margin-top:calc(var(--u)*.6)}
.disc .wtog{font-size:calc(var(--u)*1.6);min-height:calc(var(--u)*3.4);padding:calc(var(--u)*.3) calc(var(--u)*1.4)}
/* print lines */
.plines i{display:block;height:calc(var(--u)*3);border-bottom:.15cqw solid #9ca3af}
.wb.pr .wf{margin-bottom:calc(var(--u)*.4)}
.wb.pr.two{display:grid;grid-template-columns:1fr 1fr;gap:calc(var(--u)*1.4)}.wb.pr.two .whints{grid-column:1/-1}
.printmode .pad.actp{overflow:hidden}
.printmode .ap .ob,.printmode .ap .sbtn{box-shadow:none}
/* split slides: make text column scroll-safe */
.split .txt{overflow-y:auto}
.split .txt>:first-child{margin-top:auto}.split .txt>:last-child{margin-bottom:auto}
.split .txt{justify-content:flex-start}
.bt .wb,.txt .wb{font-size:inherit}

.pad:not(.bigs){justify-content:flex-start;overflow-y:auto}
.pad:not(.bigs)>:first-child{margin-top:auto}.pad:not(.bigs)>:last-child{margin-bottom:auto}
.bigs .bt{max-height:100%;overflow-y:auto;padding:1cqw 0}
body.port .pad,body.port .split .txt,body.port .bigs .bt{overflow:visible;max-height:none}
.printmode .pad,.printmode .split .txt,.printmode .bigs .bt{overflow:hidden}

body:not(.port) .mq:not(.pr),body:not(.port) .tfx,body:not(.port) .disc{display:grid;grid-template-columns:1fr 1fr;gap:calc(var(--u)*1);align-items:start}
body:not(.port) .mq>li,body:not(.port) .tfx>li,body:not(.port) .disc>li{margin-bottom:0}
body:not(.port) .tfx .st,body:not(.port) .tfb{flex-basis:100%}
.mq.pr{display:grid;grid-template-columns:1fr 1fr;gap:calc(var(--u)*.8)}.mq.pr>li{margin-bottom:0}

.actp.one h2{margin-bottom:.6cqw}
body:not(.port) .tfx>li{padding-top:calc(var(--u)*.6);padding-bottom:calc(var(--u)*.6)}
body:not(.port) .tfx .st{font-size:calc(var(--u)*1.85)}
body:not(.port) .tfb .ob,body:not(.port) .mqo .ob{min-height:calc(var(--u)*3.3)}
body:not(.port) .mqq{font-size:calc(var(--u)*1.9);margin-bottom:calc(var(--u)*.4)}
body:not(.port) .ex{font-size:calc(var(--u)*1.55)}
.mleg{font-size:calc(var(--u)*1.45);color:#6b7280;margin:calc(var(--u)*-.8) 0 calc(var(--u)*1)}
.printmode .pg .slide{--u:1cqw}

.printmode .wb.pr .wl{font-size:1.6cqw;margin-bottom:0}
.printmode .wb.pr .plines i{height:2.4cqw}
.printmode .txt .wb.pr{margin-top:.6cqw}
.printmode .split .txt li{margin-bottom:.8cqw}
.printmode .mq.pr .pbox{font-size:1.5cqw;padding:.2cqw .6cqw}
.printmode .mq.pr>li{padding-top:.5cqw;padding-bottom:.5cqw}
.printmode .tfx.pr>li{padding-top:.4cqw;padding-bottom:.4cqw}
.printmode .tfx.pr .pbox{font-size:1.5cqw;padding:.15cqw .6cqw}
.printmode .tfx.pr .ex{font-size:1.45cqw;margin-top:0}
.printmode .tfx.pr .st{font-size:1.7cqw}.printmode .tfx.pr{gap:.7cqw}.printmode .actp.one h2{font-size:3.2cqw}
.printmode .pad.actp{padding-top:2.8cqw;padding-bottom:1.6cqw}
