:root{--night:#16224a;--night2:#24356e;--gold:#f2b632;--gold2:#ffd879;--flame:#ff8a1f;--cream:#fff8ea;--ink:#1f2340;--card:#ffffff;--ok:#2e9e5b;--bad:#d64545;--r:18px}
*{box-sizing:border-box}
html,body{margin:0}
body{font-family:"Heebo","Assistant","Noto Sans Hebrew",Arial,sans-serif;background:var(--cream);color:var(--ink);font-size:18px;line-height:1.5;-webkit-tap-highlight-color:transparent}
a{color:#1d4f9a}
button{font:inherit;cursor:pointer}
:focus-visible{outline:3px solid #2f7de1;outline-offset:3px}
.top{background:linear-gradient(160deg,var(--night),var(--night2));color:#fff;padding:10px 14px;display:flex;align-items:center;gap:10px;position:sticky;top:0;z-index:20;box-shadow:0 2px 10px #0003}
.top .brand{font-weight:800;font-size:1.05rem;flex:1;color:#fff;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.top .brand span{color:var(--gold)}
.tbtn{background:#ffffff1f;border:1.5px solid #ffffff55;color:#fff;border-radius:14px;min-height:44px;min-width:44px;padding:6px 10px;font-weight:700}
.tbtn:active{transform:scale(.96)}
main{max-width:980px;margin:0 auto;padding:14px 14px 30px;min-height:70vh}
.hero{background:radial-gradient(circle at 50% 0%,#33479a 0,var(--night) 70%);color:#fff;border-radius:24px;padding:18px 16px 14px;text-align:center;position:relative;overflow:hidden}
.hero h1{margin:4px 0 2px;font-size:1.75rem;line-height:1.2}
.hero h1 b{color:var(--gold)}
.hero p{margin:4px 0 8px;opacity:.92}
.stars{position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(2px 2px at 20% 30%,#fff9,transparent),radial-gradient(1.5px 1.5px at 70% 20%,#fff9,transparent),radial-gradient(2px 2px at 85% 60%,#fff7,transparent),radial-gradient(1.5px 1.5px at 35% 75%,#fff6,transparent),radial-gradient(1.5px 1.5px at 10% 80%,#fff6,transparent)}
.hero .menorah{width:min(330px,88%);height:auto;display:block;margin:4px auto 0}
.hero .progress{font-size:.95rem;color:var(--gold2)}
h2.sec{font-size:1.3rem;margin:22px 4px 10px;display:flex;align-items:center;gap:8px}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media(min-width:720px){.grid{grid-template-columns:repeat(4,1fr)}}
.night{background:var(--card);border:2px solid #f0dfb8;border-radius:var(--r);padding:12px 10px;text-align:center;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;align-items:center;gap:4px;min-height:150px;box-shadow:0 3px 0 #ecd7a6;position:relative}
.night:active{transform:translateY(2px);box-shadow:0 1px 0 #ecd7a6}
.night .num{background:var(--night);color:var(--gold);font-weight:900;border-radius:999px;padding:2px 12px;font-size:.9rem}
.night .em{font-size:2.1rem;line-height:1.1}
.night .tt{font-weight:800;font-size:1.02rem;line-height:1.25}
.night .ss{font-size:.82rem;color:#5b5f78;line-height:1.3}
.night.done::after{content:"🕯️ שוחק";position:absolute;top:6px;left:6px;font-size:.7rem;background:#fff3cf;border-radius:8px;padding:1px 6px}
.night.bonus{border-color:#cfe0f5;box-shadow:0 3px 0 #b9cfee}
.links{display:grid;grid-template-columns:1fr;gap:10px;margin-top:8px}
@media(min-width:720px){.links{grid-template-columns:repeat(3,1fr)}}
.bigbtn{display:flex;align-items:center;justify-content:center;gap:8px;min-height:56px;border-radius:16px;border:0;background:var(--gold);color:#3a2600;font-weight:800;font-size:1.08rem;padding:10px 16px;text-decoration:none;box-shadow:0 3px 0 #c88f12;text-align:center}
.bigbtn:active{transform:translateY(2px);box-shadow:0 1px 0 #c88f12}
.bigbtn.blue{background:#2f6fd1;color:#fff;box-shadow:0 3px 0 #1d4f9a}
.bigbtn.green{background:var(--ok);color:#fff;box-shadow:0 3px 0 #1f7442}
.bigbtn.red{background:var(--bad);color:#fff;box-shadow:0 3px 0 #9c2f2f}
.bigbtn.ghost{background:#fff;color:var(--ink);border:2px solid #e6d6b0;box-shadow:none}
.bigbtn.sm{min-height:46px;font-size:.98rem;padding:6px 12px}
.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.row>.bigbtn{flex:1 1 140px}
.panel{background:#fff;border-radius:var(--r);padding:14px;border:2px solid #f0e2c2;margin:12px 0}
.gtitle{display:flex;align-items:center;gap:10px;margin:6px 0 4px}
.gtitle .badge{background:var(--night);color:var(--gold);border-radius:12px;padding:4px 10px;font-weight:900;white-space:nowrap}
.gtitle h1{font-size:1.4rem;margin:0;line-height:1.2}
.how{background:#fff6dc;border-radius:14px;padding:10px 12px;font-size:.95rem;margin:8px 0}
.how summary{font-weight:800;cursor:pointer;min-height:32px}
.muted{color:#5b5f78;font-size:.92rem}
/* Night 1 */
.tiles{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;direction:rtl;margin:10px 0}
.tile{width:52px;height:58px;border-radius:12px;background:linear-gradient(#fff6d6,#ffe39a);border:2px solid #e2b648;font-size:1.8rem;font-weight:900;color:#4a2f00;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 0 #c9992c}
.tile.used{opacity:.3}
.wordbox{min-height:56px;border:2px dashed #c9b37e;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.7rem;font-weight:800;letter-spacing:2px;background:#fff}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.chip{background:#eef3ff;border-radius:999px;padding:4px 12px;font-weight:700;font-size:1rem}
.chip.ex{background:#fff1d6}
/* Memory */
.mem{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;max-width:520px;margin:10px auto}
.mcard{aspect-ratio:3/4;border-radius:14px;border:0;padding:0;position:relative;perspective:600px;background:none}
.mcard .in{position:absolute;inset:0;transition:transform .35s;transform-style:preserve-3d}
.mcard.up .in{transform:rotateY(180deg)}
.mcard .fr,.mcard .bk{position:absolute;inset:0;border-radius:14px;backface-visibility:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center}
.mcard .bk{background:linear-gradient(150deg,var(--night),#3a4f9e);border:3px solid var(--gold);color:var(--gold);font-size:1.6rem}
.mcard .fr{background:#fff;border:3px solid #f2c75c;transform:rotateY(180deg);padding:4px}
.mcard .fr .ico{width:78%;height:auto}
.mcard .fr small{font-size:.72rem;font-weight:700;line-height:1.1}
.mcard.got .fr{border-color:var(--ok);background:#effaf2}
.players{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.pl{padding:6px 12px;border-radius:12px;background:#f1f1f6;font-weight:800}
.pl.on{background:var(--gold);color:#3a2600}
/* Trivia */
.qcard{background:linear-gradient(160deg,#fff,#fff6e0);border:3px solid var(--gold);border-radius:22px;padding:18px;text-align:center;font-size:1.3rem;font-weight:700;min-height:150px;display:flex;align-items:center;justify-content:center}
.fb{border-radius:14px;padding:10px 12px;margin-top:10px;font-weight:600}
.fb.ok{background:#e4f6ea;color:#1c6b3b}.fb.no{background:#fde8e8;color:#9c2222}
.score{font-weight:900;font-size:1.1rem;text-align:center}
/* Sevivon */
.spinwrap{display:flex;flex-direction:column;align-items:center;gap:8px}
.dreidel{width:170px;height:200px;transition:transform 2.2s cubic-bezier(.2,.8,.2,1)}
.dletter{font-size:3.4rem;font-weight:900;min-height:70px;text-align:center}
.task{border-radius:20px;padding:16px;color:#fff;text-align:center}
.task h3{margin:0 0 6px}
.task .tq{font-size:1.25rem;font-weight:700}
.task .ta{margin-top:8px;background:#ffffff2a;border-radius:12px;padding:6px}
.toggle{display:inline-flex;border-radius:12px;overflow:hidden;border:2px solid #d9c38e}
.toggle button{border:0;background:#fff;padding:8px 14px;font-weight:800;min-height:44px}
.toggle button.on{background:var(--gold)}
/* Quartets */
.qsets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.qslot{border-radius:14px;border:2px dashed #bbb;padding:6px;min-height:84px;background:#fff}
.qslot h4{margin:0 0 4px;font-size:.9rem}
.qpool{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin:12px 0}
.qc{border:2px solid #ddd;border-radius:12px;background:#fff;padding:8px 10px;font-weight:700;min-height:48px;font-size:1rem}
.qc.sel{border-color:#2f6fd1;background:#e9f1ff;transform:scale(1.04)}
.qc.placed{font-size:.8rem;padding:3px 6px;min-height:30px;margin:2px;display:inline-block;max-width:100%;white-space:normal}
.qc.wrong{border-color:var(--bad);animation:shake .3s}
@keyframes shake{25%{transform:translateX(4px)}75%{transform:translateX(-4px)}}
.qslot.full{border-style:solid;background:#effaf2}
/* matches */
.matchsvg{width:100%;max-width:440px;height:auto;display:block;margin:10px auto;background:#2a1c10;border-radius:16px;padding:8px}
.mstick{stroke:#e9c48a;stroke-width:6;stroke-linecap:round}
.mhead{fill:#d6322b}
.m.off .mstick{stroke:#ffffff22;stroke-dasharray:3 4}.m.off .mhead{fill:#ffffff18}
.m.picked .mstick{stroke:#7fd1ff}.m.picked .mhead{fill:#7fd1ff}
.mhit{stroke:transparent;stroke-width:18;stroke-linecap:round}
.matchsvg.inter .m:not(.fixed){cursor:pointer}
.m.fixed .mstick{stroke:#bfa27a}
/* board */
.boardwrap{overflow-x:auto}
.boardsvg{width:100%;height:auto;display:block;border-radius:16px}
.dice{font-size:3.2rem;line-height:1;width:84px;height:84px;border-radius:18px;background:#fff;border:3px solid var(--night);display:flex;align-items:center;justify-content:center;margin:auto}
.dice.roll{animation:roll .5s}
@keyframes roll{50%{transform:rotate(180deg) scale(1.1)}}
.msg{background:#fff6dc;border-radius:14px;padding:10px;text-align:center;font-weight:700;min-height:48px}
/* talk */
.talk{background:linear-gradient(160deg,#ffefc4,#ffd98a);border-radius:26px;padding:26px 18px;text-align:center;font-size:1.45rem;font-weight:800;min-height:200px;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 0 #e3b24c;color:#4a2f00}
/* recipes */
.ingr{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.ing{border:2px solid #e3d2a6;background:#fff;border-radius:14px;padding:8px 12px;font-weight:700;min-height:46px}
.ing.sel{background:#fff1c9;border-color:#e0a91c}
.ing.right{background:#e4f6ea;border-color:var(--ok)}.ing.miss{background:#fff;border-color:var(--ok);border-style:dashed}.ing.wrongp{background:#fde8e8;border-color:var(--bad)}
.rec ol,.rec ul{padding-inline-start:22px;margin:6px 0}
/* emoji */
.emo{font-size:3.2rem;text-align:center;letter-spacing:4px;background:#fff;border-radius:22px;padding:18px;border:3px solid #cfe0f5;direction:ltr}
/* hunt */
.clue{background:#fffaf0;border:3px dashed #d8a640;border-radius:20px;padding:16px;font-size:1.2rem;font-weight:700;text-align:center}
/* escape */
.locks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0}
.lock{border-radius:14px;padding:8px;text-align:center;background:#eceef6;font-weight:800;border:2px solid #d4d8e6;min-height:70px}
.lock.open{background:#e4f6ea;border-color:var(--ok)}
.lock.cur{border-color:var(--gold);background:#fff6dc}
input.ans{font:inherit;font-size:1.4rem;padding:10px;border-radius:14px;border:2px solid #c8c0a8;width:100%;text-align:center;min-height:54px}
/* scores */
table.sc{width:100%;border-collapse:collapse;background:#fff;border-radius:14px;overflow:hidden}
table.sc td,table.sc th{padding:8px;border-bottom:1px solid #eee;text-align:center}
table.sc th{background:var(--night);color:var(--gold)}
.pbtn{min-width:46px;min-height:46px;border-radius:12px;border:2px solid #ddd;background:#fff;font-weight:900;font-size:1.2rem}
/* timer overlay */
.overlay{position:fixed;inset:0;background:#0b1230cc;z-index:50;display:none;align-items:center;justify-content:center;padding:16px}
.overlay.show{display:flex}
.tbox{background:#fff;border-radius:24px;padding:18px;width:min(420px,100%);text-align:center}
.tdisp{font-size:3.4rem;font-weight:900;font-variant-numeric:tabular-nums;direction:ltr}
.tdisp.end{color:var(--bad);animation:shake .4s 3}
.hourglass{width:80px;height:110px;margin:auto}
/* footer */
footer.foot{display:flex;align-items:center;justify-content:center;gap:10px;padding:16px;border-top:2px solid #f0e2c2;background:#fff;font-weight:700;color:#4a4f6a}
footer.foot img{width:44px;height:44px;border-radius:10px}
.confetti{position:fixed;inset:0;pointer-events:none;z-index:60}
.center{text-align:center}
.mt{margin-top:12px}
.hide{display:none!important}
.rules h3{margin:16px 0 4px;color:var(--night2)}
.rules p,.rules li{font-size:.98rem}

.panel,.qslot,.lock{min-width:0;overflow-wrap:anywhere}
body{overflow-x:hidden}

.lvbar{display:flex;gap:6px;align-items:center;justify-content:center;flex-wrap:wrap;margin:14px 0 0;background:#fff;border:2px solid #f0dfb8;border-radius:16px;padding:8px}
.lvbar span{font-weight:800}
.lvb{border:2px solid #e2d3ad;background:#fff;border-radius:12px;min-height:46px;padding:6px 12px;font-weight:800}
.lvb.on{background:var(--night);color:var(--gold);border-color:var(--night)}
.ws{display:grid;gap:3px;max-width:520px;margin:10px auto;direction:rtl}
.wc{aspect-ratio:1;border:1px solid #e3d2a6;background:#fff;border-radius:6px;font-weight:800;font-size:clamp(.85rem,4.2vw,1.25rem);padding:0}
.wc.pick{background:#cfe3ff;border-color:#2f6fd1}
.wc.hit{background:#ffe08a;border-color:#e0a91c}

textarea.ans{display:block;width:100%;box-sizing:border-box}
