
:root{--bg:#fff8ef;--ink:#2b2236;--mut:#6b6177;--card:#fff;--line:#eadfce;--acc:#d6336c;--acc2:#7048e8;--ok:#2b8a3e;--no:#e03131;--r:18px;--sh:0 4px 14px rgba(60,40,20,.10)}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.6 system-ui,-apple-system,"Segoe UI",Arial,"Noto Sans Hebrew",sans-serif;overflow-x:hidden}
a{color:#1864ab}button{font:inherit;cursor:pointer;touch-action:manipulation;color:inherit}
:focus-visible{outline:3px solid #fab005;outline-offset:2px}
.skip{position:absolute;right:-999px}.skip:focus{right:8px;top:8px;background:#fff;padding:8px;z-index:9}
.wrap{max-width:1040px;margin:0 auto;padding:0 14px}
header.top{background:linear-gradient(135deg,#ff922b,#f06595 55%,#845ef7);color:#fff;padding:10px 0 6px;border-radius:0 0 22px 22px;box-shadow:var(--sh)}
.hrow{display:flex;align-items:center;gap:12px}
img.rl-top{display:block;width:56px!important;height:56px!important;flex:0 0 56px;border-radius:50%;object-fit:cover;background:#fff;border:3px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.2)}
img.rl-foot{display:inline-block;width:72px!important;height:72px!important;border-radius:50%;object-fit:cover;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.22);flex:none}
.htxt{flex:1;min-width:0}.ttl{color:#fff;text-decoration:none;font-weight:800;font-size:1.35rem;line-height:1.2}.htxt p{margin:2px 0 0;opacity:.95;font-size:.92rem}
.nav{display:flex;gap:6px;overflow-x:auto;padding:8px 14px 6px;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
.nav a{white-space:nowrap;text-decoration:none;color:var(--ink);background:rgba(255,255,255,.92);border-radius:999px;padding:7px 13px;font-size:.93rem;font-weight:700;min-height:40px;display:inline-flex;align-items:center}
.nav a.on{background:#2b2236;color:#fff}.nav a.ext{background:rgba(255,255,255,.25);color:#fff}
main{padding-top:12px;padding-bottom:30px;min-height:60vh}
h2{font-size:1.35rem;margin:18px 0 8px}h3{font-size:1.12rem;margin:14px 0 6px}
.hero{position:relative;background:#fff;border-radius:var(--r);box-shadow:var(--sh);padding:18px 16px;text-align:center;overflow:hidden}
.hero h1{margin:0;font-size:1.8rem}.hero .lk{font-size:2.6rem;line-height:1}.hero .sub{margin:6px 0 10px;color:var(--mut)}
.legend{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.legend span{background:#f8f0fc;border-radius:999px;padding:3px 10px;font-size:.88rem;font-weight:700}
.rooms{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
.rcard{display:flex;flex-direction:column;gap:4px;text-decoration:none;color:inherit;background:#fff;border-radius:var(--r);box-shadow:var(--sh);padding:14px;border-top:7px solid var(--acc);transition:transform .15s}
.rcard:nth-child(2){border-top-color:#1c7ed6}.rcard:nth-child(3){border-top-color:var(--acc2)}.rcard:nth-child(4){border-top-color:#e8590c}
.rcard:active{transform:scale(.98)}.ri{font-size:2.3rem;line-height:1}.ri.big{font-size:3rem}.rt{font-weight:800;font-size:1.1rem;line-height:1.3}.rtop{color:var(--mut);font-size:.95rem}.rg{font-size:.9rem;color:var(--mut)}
.badge{display:inline-block;background:#2b2236;color:#fff;border-radius:999px;padding:1px 9px;font-weight:700;font-size:.85rem}
.ours{display:inline-block;align-self:flex-start;font-size:.78rem;background:#f1f3f5;border-radius:999px;padding:1px 9px;color:#555;margin-top:2px}
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
.tile{display:flex;flex-direction:column;gap:2px;text-decoration:none;color:inherit;background:#fff;border-radius:var(--r);box-shadow:var(--sh);padding:14px;min-height:110px;border-bottom:4px solid var(--acc2)}
.tile .ti{font-size:2rem;line-height:1}.tile small{color:var(--mut)}
.howto,.card{background:#fff;border-radius:var(--r);box-shadow:var(--sh);padding:14px 16px;margin:14px 0}
.note{color:var(--mut)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:46px;padding:8px 16px;border:0;border-radius:14px;background:var(--acc2);color:#fff;font-weight:700;text-decoration:none;margin:6px 0 6px 6px;box-shadow:0 3px 0 rgba(0,0,0,.15)}
.btn.ghost{background:#fff;color:var(--acc2);border:2px solid var(--acc2);box-shadow:none}
.btn.big{font-size:1.12rem;min-height:54px;padding:10px 22px}.btn.play{background:var(--acc)}
.btn:disabled{opacity:.45;cursor:default}
.btn.ok{background:var(--ok)}
/* room start */
.back{display:inline-block;margin:4px 0 8px;font-weight:700;text-decoration:none}
.rstart{background:#fff;border-radius:var(--r);box-shadow:var(--sh);padding:14px 16px}
.rhead{display:flex;gap:12px;align-items:center}.rhead h2{margin:0}
.story{background:#fff4e6;border-right:5px solid #fd7e14;border-radius:12px;padding:12px 14px;margin:12px 0;font-size:1.05rem}
.lab{display:block;font-weight:700;margin:10px 0}.lab input,.pform input{display:block;width:100%;margin-top:4px;font:inherit;padding:10px 12px;border:2px solid var(--line);border-radius:12px;min-height:46px}
.seg{border:0;padding:0;margin:10px 0;display:flex;flex-wrap:wrap;gap:6px}.seg legend{font-weight:700;margin-bottom:4px;width:100%}
.seg label{display:inline-flex;align-items:center;gap:6px;background:#f8f9fa;border:2px solid var(--line);border-radius:999px;padding:6px 12px;min-height:44px;cursor:pointer}
.seg label:has(input:checked){border-color:var(--acc2);background:#f3f0ff}
.chk{display:flex;gap:8px;align-items:center;margin:8px 0;font-weight:700}
.chk input,.seg input{width:20px;height:20px}
/* play */
.pbar{position:sticky;top:0;z-index:4;display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;background:#2b2236;color:#fff;border-radius:14px;padding:8px 12px;margin-bottom:10px;font-size:.92rem}
.rmini{font-weight:700;flex:1 1 100%}.locks{display:flex;gap:3px;flex-wrap:wrap}.lk{font-size:1.15rem;opacity:.55}.lk.open{opacity:1}.lk.cur{opacity:1;filter:drop-shadow(0 0 4px #ffd43b)}
.tmr{font-variant-numeric:tabular-nums;background:rgba(255,255,255,.15);border-radius:999px;padding:1px 9px}.tmr.over{background:var(--no)}.hc{margin-inline-start:auto}
.tover{background:#fff5f5;border:2px solid var(--no);border-radius:12px;padding:8px 12px;margin-bottom:10px;font-weight:700}
.lock{position:relative;background:#fff;border-radius:var(--r);box-shadow:var(--sh);padding:14px 16px;overflow:hidden}
.lock.solved{box-shadow:0 0 0 3px var(--ok),var(--sh)}
.lnum{font-size:.85rem;color:var(--mut);font-weight:700}.lock h3{margin:2px 0 8px;font-size:1.3rem}
.lstory{background:#f8f0fc;border-radius:12px;padding:10px 12px;margin-bottom:10px}
.lq{font-weight:700;margin-bottom:10px;font-size:1.05rem}
.words{font-size:1.35rem;font-weight:800;margin:8px 0;text-align:center}.abc{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;margin:8px 0}.abc span{display:flex;flex-direction:column;align-items:center;min-width:32px;background:#fff;border:2px dashed var(--acc2);border-radius:8px;padding:2px 4px;font-weight:700;line-height:1.2;font-variant-numeric:tabular-nums}.abc b{font-size:1.15rem;color:var(--acc2)}
.opts{display:grid;gap:8px}.opt{text-align:start;background:#f8f9fa;border:2px solid var(--line);border-radius:14px;padding:12px 14px;min-height:50px;font-size:1.08rem}
.opt.right,.chip.right,.slot.right{background:#d3f9d8;border-color:var(--ok)}.opt.wrong,.chip.wrong{background:#ffe3e3;border-color:var(--no);opacity:.7}
.typ{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.typ input{flex:1 1 180px;min-width:0;font:inherit;font-size:1.25rem;padding:10px 12px;border:2px solid var(--line);border-radius:12px;min-height:50px}
.typ input.num{letter-spacing:.35em;text-align:center;font-weight:800}
.typ input.right{border-color:var(--ok);background:#ebfbee}.typ input.wrong{border-color:var(--no);background:#fff5f5}
.bank{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:10px;background:#fff9db;border-radius:12px;padding:8px}.bank span{font-weight:700;font-size:.9rem}.bank.sm{background:transparent;padding:4px 0;margin-top:4px}
.chip{border:2px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;font-weight:700;min-height:44px;font-size:1.02rem}
.chip:disabled{cursor:default}
.mini{font-size:.88rem;color:var(--mut);margin:8px 0 4px;font-weight:700}
.pool{display:flex;flex-wrap:wrap;gap:6px;min-height:50px;background:#f8f9fa;border-radius:12px;padding:8px}
.chip.ord{border-radius:12px;text-align:start;line-height:1.35}
.ans{margin:0;padding:0 22px 0 0;min-height:44px;border:2px dashed var(--line);border-radius:12px;padding:6px 26px 6px 6px}.ans li{margin:4px 0}.ans .chip{background:#f3f0ff;border-color:var(--acc2)}
.row{display:flex;flex-wrap:wrap}
.mrows{display:grid;gap:6px}.mrow{display:grid;grid-template-columns:1fr 1fr;gap:6px;align-items:stretch}
.ml{background:#f8f9fa;border:2px solid var(--line);border-radius:12px;padding:8px 10px;text-align:start;font-weight:700;min-height:48px;font-size:1.05rem}
.mrow.sel .ml{border-color:var(--acc2);background:#f3f0ff}.mrow.sel .slot{border-color:var(--acc2)}
.slot{border:2px dashed var(--line);border-radius:12px;background:#fff;min-height:48px;padding:6px 8px;font-weight:700;color:var(--mut)}.slot.full{border-style:solid;color:var(--ink);background:#fff9db}
.srows{display:grid;gap:8px}.srow{background:#f8f9fa;border:2px solid var(--line);border-radius:12px;padding:8px 10px}.srow.bad{border-color:var(--no);background:#fff5f5}.srow.good{border-color:var(--ok);background:#ebfbee}
.st{font-weight:700;margin-bottom:6px;font-size:1.05rem}.sc{display:flex;flex-wrap:wrap;gap:6px}.chip.cat.on{background:#2b2236;color:#fff;border-color:#2b2236}
.letter{background:#fdf6e3;border:1px solid #e9d8a6;border-radius:12px;padding:14px;font-family:"David Libre","Frank Ruhl Libre",Georgia,serif;font-size:1.15rem;line-height:2.1;box-shadow:inset 0 0 18px rgba(150,110,30,.12)}
.tok{border:0;background:transparent;border-radius:6px;padding:2px 3px;font:inherit;line-height:1.4}.tok.mk{background:#ffd8a8;box-shadow:0 0 0 2px #fd7e14}.tok.fixed{background:#d3f9d8;box-shadow:none}.tok s{color:var(--no)}
.clues{padding-right:22px;margin:6px 0}.clues li{margin:8px 0}
.boxes{display:flex;gap:6px;justify-content:center;margin:6px 0 10px}.bx{width:44px;height:50px;display:grid;place-items:center;border:2px solid var(--acc2);border-radius:10px;font-size:1.5rem;font-weight:800;background:#fff;color:var(--mut)}.bx.on{background:#f3f0ff;color:var(--ink)}
.fb{margin-top:10px;border-radius:12px;padding:0 12px}.fb.ok{background:#ebfbee;padding:10px 12px;border:2px solid var(--ok)}.fb.no{background:#fff5f5;padding:10px 12px;border:2px solid var(--no);font-weight:700}
.hints{margin-top:8px}.hint{background:#fff9db;border-radius:10px;padding:8px 10px;margin:6px 0}
.hintb{margin-top:6px}
.next{display:flex;width:100%;margin:12px 0 0}
.quit{text-align:center;margin-top:10px;font-size:.92rem}
.lock.pause textarea{width:100%;font:inherit;border:2px solid var(--line);border-radius:12px;padding:10px;margin:10px 0}
.shake{animation:sh .4s}@keyframes sh{0%,100%{transform:none}25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
.conf{position:absolute;top:-10px;font-size:1.4rem;animation:fall 1.6s ease-in forwards;pointer-events:none}@keyframes fall{to{transform:translateY(260px) rotate(200deg);opacity:0}}
.win{position:relative;overflow:hidden;background:#fff;border-radius:var(--r);box-shadow:var(--sh);padding:18px 16px;text-align:center}
.win .big{font-size:2.2rem;font-weight:800}.stats{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:10px 0}.stats span{background:#f3f0ff;border-radius:999px;padding:4px 12px;font-weight:700}
.src,.refl{text-align:start;background:#f8f9fa;border-radius:12px;padding:8px 14px;margin-top:12px}
/* prompts */
.subnav{display:flex;flex-wrap:wrap;gap:6px}.subnav a{background:#fff;border:2px solid var(--line);border-radius:999px;padding:6px 12px;text-decoration:none;color:var(--ink);font-weight:700;font-size:.92rem;min-height:40px;display:inline-flex;align-items:center}
.card{scroll-margin-top:10px}.lead{font-size:1.08rem}
.step{border-right:5px solid var(--acc2);padding:2px 12px 2px 0;margin:12px 0}.step h3{display:flex;align-items:center;gap:8px}.step .n{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--acc2);color:#fff;flex:none}
.credit{color:var(--mut);font-size:.9rem}
.bp li{margin:6px 0}.types{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;margin-top:10px}.types>div{background:#f8f9fa;border-radius:12px;padding:8px 10px;font-size:.95rem}
.adv{border-top:1px solid var(--line);padding-top:4px}
.pform{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;background:#f3f0ff;border-radius:12px;padding:10px;margin:10px 0}.pform label{font-weight:700;font-size:.92rem}
.prompt{border:2px solid var(--line);border-radius:14px;padding:10px 12px;margin:12px 0;background:#fffdf8}.ph{font-weight:800;font-size:1.05rem}
.ptext{white-space:pre-wrap;word-wrap:break-word;font:inherit;font-size:.97rem;background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px;margin:8px 0;max-height:none}
.files{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}.file{display:flex;flex-direction:column;gap:3px;background:#fff;border-radius:var(--r);box-shadow:var(--sh);padding:12px 14px}.file small{color:var(--mut)}
.fl{display:flex;flex-wrap:wrap}.fl2{background:#fff;border-radius:12px;padding:10px;box-shadow:var(--sh);margin:12px 0}.fl2 .fl{display:inline-flex;margin-inline-end:10px}
.talk{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.tcard{position:relative;display:block;width:100%;min-height:170px;border:0;border-radius:var(--r);background:linear-gradient(135deg,#f06595,#845ef7);color:#fff;padding:14px;text-align:start;box-shadow:var(--sh);font-size:1.02rem}
.tcard .front{display:flex;flex-direction:column;gap:4px;font-size:1.15rem;font-weight:800}.tcard .front b{font-size:.9rem;opacity:.85}.tcard .back{display:none}
.tcard.flip{background:#fff;color:var(--ink);border:3px solid #f06595}.tcard.flip .front{display:none}.tcard.flip .back{display:block}
.tcard.static{min-height:0;margin:8px 0;cursor:default}
.writes{display:grid;gap:10px}.wcard{background:#fff;border-radius:var(--r);box-shadow:var(--sh);padding:12px 14px;border-right:6px solid #fd7e14}.wcard small{display:block;color:var(--mut)}.wcard p{margin:6px 0 0}
footer{background:#2b2236;color:#f1e9ff;margin-top:26px;padding:18px 0;font-size:.9rem}footer a{color:#ffd8e8}
.frow{display:flex;gap:12px;align-items:flex-start}.cred{font-weight:800;margin:0 0 4px}footer p{margin:4px 0}
@media (min-width:768px){img.rl-top{width:64px!important;height:64px!important;flex-basis:64px}.mrow{grid-template-columns:1.2fr 1fr}.pbar .rmini{flex:0 1 auto}}
@media print{header,nav,footer,.btn{display:none}}

.cover{margin:0 0 14px;border-radius:var(--r);overflow:hidden;box-shadow:var(--sh);background:#f8f0fc;line-height:0}
.cover img{display:block;width:100%;height:auto;max-height:520px;object-fit:cover}
@media print{.cover{box-shadow:none;break-inside:avoid}.cover img{max-height:9cm}}
