:root{--bg:#f4f7fb;--ink:#1f2a37;--mut:#5b6472;--card:#fff;--pri:#1d5fa8;--red:#d64045;--soft:#e7f0fb;--ok:#14866d;--okb:#e1f5ef;--bad:#c0392b;--badb:#fdecea;--warnb:#fff4d6;--r:18px}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:"Rubik","Heebo","Assistant","Noto Sans Hebrew",Arial,sans-serif;background:var(--bg);color:var(--ink);line-height:1.55;font-size:17px;overflow-x:hidden}
.skip{position:absolute;right:-999px}.skip:focus{right:8px;top:8px;background:#fff;padding:6px 10px;z-index:9;border-radius:8px}
.top{position:sticky;top:0;z-index:5;background:#fff;color:var(--ink);padding:8px 12px 10px;box-shadow:0 2px 10px #0002;border-top:7px solid transparent;border-image:repeating-linear-gradient(135deg,#d64045 0 14px,#fff 14px 22px,#1d5fa8 22px 36px,#fff 36px 44px) 7}
.brand{color:var(--pri);text-decoration:none;display:flex;align-items:baseline;gap:6px;font-size:1.2rem;flex-wrap:wrap}.brand small{color:var(--mut);font-size:.85rem}
.lv{display:flex;gap:6px;margin-top:6px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.lv::-webkit-scrollbar{display:none}
.lv button{flex:0 0 auto;border:2px solid #c9d8ee;background:#fff;color:var(--pri);border-radius:999px;padding:6px 12px;font:inherit;font-size:.92rem;cursor:pointer;min-height:40px}
.lv button[aria-pressed=true]{background:var(--pri);color:#fff;font-weight:700;border-color:var(--pri)}
main{max-width:860px;margin:0 auto;padding:14px 12px 30px;outline:none}
h1{font-size:1.55rem;margin:.2em 0 .3em;line-height:1.25}h2{font-size:1.25rem;margin:.9em 0 .4em}h3{margin:.4em 0}
.lead{color:var(--mut);margin:.2em 0 .8em}
.card{background:var(--card);border-radius:var(--r);padding:14px;box-shadow:0 2px 12px #0000000f;margin:0 0 14px;border:1px solid #e8edf4}
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}
.tile{display:block;text-decoration:none;color:inherit;background:#fff;border-radius:var(--r);padding:14px;border:2px solid #e8edf4;border-top:6px solid var(--c);box-shadow:0 2px 10px #0000000d;min-height:104px}
.tile:hover,.tile:focus{transform:translateY(-2px);border-color:var(--c)}
.tile .ic{font-size:2rem}.tile b{display:block;font-size:1.12rem;margin:.2em 0}.tile span{color:var(--mut);font-size:.93rem}
.btn,.chip,.opt{font:inherit;cursor:pointer;border-radius:16px;border:2px solid #c9d8ee;background:#fff;color:var(--ink);padding:10px 14px;min-height:48px;text-align:right}
.btn{background:var(--pri);color:#fff;border-color:var(--pri);font-weight:700;border-radius:999px;padding:10px 18px;display:inline-flex;align-items:center;gap:6px;text-decoration:none;justify-content:center}
.btn.alt{background:#fff;color:var(--pri)}.btn.red{background:var(--red);border-color:var(--red)}.btn.sm{min-height:42px;padding:6px 14px;font-size:.95rem}
.btn:focus-visible,.chip:focus-visible,.opt:focus-visible,.tile:focus-visible,.lv button:focus-visible,.lp:focus-visible{outline:3px solid #ffb703;outline-offset:2px}
.row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0}
.chip{border-radius:999px;padding:8px 14px;min-height:44px}.chip[aria-pressed=true]{background:var(--soft);border-color:var(--pri);font-weight:700}
.opts{display:grid;gap:8px;margin:8px 0}.opt{width:100%;display:block;white-space:pre-line}
.opt.ok{background:var(--okb);border-color:var(--ok)}.opt.no{background:var(--badb);border-color:var(--bad)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.two .opt{text-align:center;font-weight:700;font-size:1.1rem;min-height:64px}
.fb{border-radius:14px;padding:10px 12px;margin:8px 0;font-weight:500}.fb.ok{background:var(--okb);color:#0b5d4b}.fb.no{background:var(--badb);color:#8e2a1f}.fb.info{background:var(--warnb);color:#6b4a0f}
.score{font-weight:700;color:var(--pri)}
.back{display:inline-block;margin-bottom:8px;color:var(--pri);font-weight:700;text-decoration:none;min-height:40px;padding:6px 0}
/* letter paper */
.paper{position:relative;background:#fffdf6;border-radius:12px;padding:16px 16px 18px 16px;box-shadow:0 3px 14px #0000001a;border:1px solid #efe6cc;background-image:repeating-linear-gradient(#fffdf6 0 31px,#dfe8f5 31px 32px);margin:10px 0;line-height:32px;font-size:1.04rem}
.paper:before{content:"";position:absolute;top:0;bottom:0;right:10px;width:2px;background:#f2b8ba}
.lp{display:block;width:100%;text-align:right;background:transparent;border:2px dashed transparent;border-radius:10px;font:inherit;color:inherit;padding:0 8px;margin:2px 0;cursor:pointer;white-space:pre-line;line-height:32px}
.lp:hover{border-color:#c9d8ee}.lp.sel{border-color:var(--red);background:#fff2f2}
.lp.hl{border-color:#e3b505;background:#fff7d6;animation:pulse 1.2s infinite}
@keyframes pulse{50%{background:#ffeaa0}}
.k-mk,.k-sy,.k-ch,.k-nb{text-align:left}.k-ns{text-align:center;font-weight:700;text-decoration:underline}.k-nb{font-size:.92em;color:#555}
div.lp{cursor:default}
.lp.wrong{border-color:var(--bad);background:var(--badb)}.lp.right{border-color:var(--ok);background:var(--okb)}.lp.miss{border-color:#e8772e;background:#fff1e3}.lp.mark{border-color:var(--red);background:#fff2f2;text-decoration:line-through}
.fix{display:block;font-size:.9rem;line-height:1.4;padding:4px 8px;color:#0b5d4b}
.info{background:var(--soft);border-radius:14px;padding:10px 12px;margin:8px 0}.info .big{font-size:2rem}
.tag{display:inline-block;background:var(--soft);color:var(--pri);border-radius:999px;padding:2px 10px;font-size:.85rem;font-weight:700}
.legend{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}.legend span{background:#fff;border:1px solid #dde5f0;border-radius:999px;padding:2px 10px;font-size:.85rem}
/* sort card */
.scard{font-size:1.3rem;text-align:center;background:#fff;border:3px solid #c9d8ee;border-radius:20px;padding:22px 14px;margin:10px 0;min-height:110px;display:flex;align-items:center;justify-content:center}
/* seder */
.pieces{display:grid;gap:8px}.piece{position:relative;padding-right:46px!important}.piece i{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:30px;height:30px;border-radius:50%;background:#eef2f8;font-style:normal;display:flex;align-items:center;justify-content:center;font-weight:700}
.piece.on i{background:var(--pri);color:#fff}
/* envelope */
.env{position:relative;background:#fbf3e4;border:3px solid #d9c49c;border-radius:12px;aspect-ratio:1.75/1;margin:10px 0;overflow:hidden;font-size:.92rem;line-height:1.35}
.env .stamp{position:absolute;top:8px;right:8px;width:58px;height:66px;border:3px dashed #c9a86a;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:.7rem;color:#9b8456;text-align:center;background:#fffaf0}
.env .stamp.on{border:3px solid #fff;outline:2px dashed #d64045;background:linear-gradient(135deg,#ffd3d3,#cfe2ff);font-size:2rem}
.env .from{position:absolute;top:8px;left:10px;max-width:44%;font-size:.78rem;color:#555;text-align:right;min-height:40px}
.env .to{position:absolute;bottom:12%;left:50%;transform:translateX(-50%);width:62%;min-height:40%;border-top:1px dashed #d9c49c;padding-top:6px;font-weight:600}
.env .from:empty:before{content:"✉️ השולח/ת";color:#bba77d}.env .to:empty:before{content:"📍 הנמען/ת";color:#bba77d;font-weight:400}
.addr{display:grid;gap:8px}
/* writing */
textarea,input[type=text]{width:100%;font:inherit;border:2px solid #c9d8ee;border-radius:14px;padding:10px;background:#fff;color:var(--ink)}
textarea{min-height:150px;line-height:1.7}
.check label{display:flex;gap:8px;align-items:center;min-height:40px;cursor:pointer}.check input{width:22px;height:22px}
.prompt{background:linear-gradient(135deg,#fff,#eef4fc);border:3px solid var(--pri);border-radius:18px;padding:16px;font-size:1.12rem;font-weight:500}
.wb{background:#ecfbf1;border:2px solid #9fdcb5;border-radius:16px;padding:10px;margin:10px 0}.wb ul{list-style:none;padding:0;margin:6px 0;display:flex;flex-wrap:wrap;gap:6px}.wb li{background:#fff;border-radius:10px;padding:4px 10px;border:1px solid #cfe9d8}.wb li small{color:var(--mut);direction:ltr;unicode-bidi:isolate}
table{width:100%;border-collapse:collapse;margin:6px 0}td,th{border:1px solid #dde5f0;padding:8px;text-align:right;vertical-align:top}th{background:var(--soft)}
.tablewrap{overflow-x:auto}
.safe{background:#fff6e0;border-right:6px solid #e3b505;border-radius:14px;padding:12px}
.ashan{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px}.ashan div{background:#fff;border:2px solid #f0b37e;border-radius:14px;padding:8px}.ashan b{font-size:1.4rem;color:#b4531a}
.foot{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:center;padding:16px;color:var(--mut);font-size:.92rem;border-top:1px solid #e8edf4;background:#fff;text-align:right}
.foot img{border-radius:50%}.pn{font-size:.85rem}.insp{font-size:.8rem;width:100%;text-align:center}.insp a{color:var(--mut)}
.nik{font-size:1.12em;line-height:1.9}
.lv-m{font-size:19px}.lv-m .opt,.lv-m .chip,.lv-m .lp{min-height:60px;font-size:1.15rem}.lv-m .two .opt{min-height:84px;font-size:1.3rem}
.big{font-size:2.4rem;line-height:1}
.stars{font-size:1.6rem}
@media (max-width:420px){.lv{gap:4px}.lv button{flex:1 1 auto;padding:4px 4px;font-size:.74rem;min-height:40px;border-width:1.5px}.brand{font-size:1.05rem}.env{font-size:.74rem}.env .from{font-size:.62rem}.env .stamp{width:44px;height:50px}.paper{padding:12px 10px;font-size:.98rem}}
@media print{@page{size:A4;margin:15mm}body{background:#fff;font-size:12pt}.top .lv,.skip,.btn,.noprint{display:none!important}.top{position:static;box-shadow:none}.card,.tile{box-shadow:none;break-inside:avoid}main{max-width:none;padding:0;text-align:right}}
