:root{--a:#e07a2e;--a2:#b4531a;--bg:#fff8f0;--card:#fff;--ink:#2b2233;--mute:#6b5f73;--soft:#fde9d6;--r:18px}
body.mode-end{--a:#0e9aa7;--a2:#09707a;--bg:#f2fbfb;--soft:#d9f2f3}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:system-ui,"Noto Sans Hebrew","Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--ink);font-size:18px;line-height:1.55;min-height:100vh;display:flex;flex-direction:column}
.skip{position:absolute;right:-999px}.skip:focus{right:8px;top:8px;background:#fff;padding:8px;z-index:9}
button,input,textarea,select{font:inherit;color:inherit}
button{cursor:pointer;border:0;border-radius:14px;min-height:48px;padding:10px 16px;background:var(--a);color:#fff;font-weight:700;touch-action:manipulation}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #222;outline-offset:2px}
button.ghost{background:#fff;color:var(--a2);border:2px solid var(--a)}
button.small{min-height:40px;padding:6px 12px;font-size:16px}
.top{position:sticky;top:0;z-index:5;background:var(--a);color:#fff;padding:8px 12px 10px;box-shadow:0 2px 8px #0002}
.top-row{display:flex;align-items:center;gap:10px}
.home-btn{background:#fff3;font-size:22px;padding:6px 12px}
.ttl{display:flex;flex-direction:column;line-height:1.25}.ttl b{font-size:19px}.ttl span{font-size:14px;opacity:.95}
.switches{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}
.sw{display:flex;background:#0002;border-radius:14px;padding:3px;flex:1;min-width:0}
.sw.age{flex:.7}
.sw button{flex:1;background:transparent;min-height:42px;padding:6px 6px;font-size:15px;border-radius:11px;white-space:nowrap}
.sw button[aria-pressed="true"]{background:#fff;color:var(--a2)}
main{flex:1;width:100%;max-width:1100px;margin:0 auto;padding:14px 12px 24px;outline:none}
h1{font-size:26px;margin:6px 0 6px;line-height:1.3}h2{font-size:21px;margin:18px 0 8px}h3{margin:10px 0 6px;font-size:19px}
p{margin:6px 0}
.lead{color:var(--mute);margin-bottom:12px}
.hero{background:linear-gradient(135deg,var(--soft),#fff);border-radius:var(--r);padding:18px 16px;margin-bottom:14px;border:2px solid var(--soft)}
.hero .big{font-size:44px;line-height:1}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.tile{display:flex;flex-direction:column;align-items:flex-start;gap:4px;background:var(--card);color:var(--ink);border:2px solid #0000;border-radius:var(--r);padding:14px;box-shadow:0 2px 10px #0001;text-align:right;min-height:118px;font-weight:400}
.tile .e{font-size:34px;line-height:1.1}.tile b{font-size:18px}.tile small{color:var(--mute);font-size:14px;line-height:1.35}
.tile:hover{border-color:var(--a)}
.tile.t2{background:var(--soft)}
.box{background:var(--card);border-radius:var(--r);padding:14px;box-shadow:0 2px 10px #0001;margin:12px 0}
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0 10px}
.tabs button{background:#fff;color:var(--a2);border:2px solid var(--a)}
.tabs button[aria-pressed="true"]{background:var(--a);color:#fff}
.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.stage{background:var(--card);border-radius:24px;box-shadow:0 4px 18px #0002;padding:22px 16px;text-align:center;margin:12px 0;min-height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}
.stage .q{font-size:clamp(24px,5vw,46px);font-weight:800;line-height:1.35}
.stage .em{font-size:56px;line-height:1}
.timer{font-size:30px;font-weight:800;font-variant-numeric:tabular-nums;min-width:90px;text-align:center}
.timer.end{color:#c62828}
.pill{display:inline-block;padding:2px 10px;border-radius:99px;background:var(--soft);font-size:15px}
.note{background:#fffbe6;border-right:5px solid #f0b400;border-radius:12px;padding:10px 12px;margin:10px 0;font-size:16px}
.corners{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%;max-width:640px}
.corners div{border-radius:14px;padding:10px;color:#fff;font-weight:700}
.bingo{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.bingo button{background:#fff;color:var(--ink);border:2px solid var(--soft);min-height:92px;font-size:14px;font-weight:600;line-height:1.3;padding:6px}
.bingo button.on{background:var(--a);color:#fff;border-color:var(--a)}
label{display:block;font-weight:700;margin:8px 0 4px}
input[type=text],textarea,select{width:100%;border:2px solid #d8cfe0;border-radius:12px;padding:10px;background:#fff;font-size:17px;min-height:48px}
textarea{resize:vertical}
.road{position:relative;padding-right:28px;margin-top:10px}
.road:before{content:"";position:absolute;right:11px;top:0;bottom:0;width:6px;border-radius:3px;background:repeating-linear-gradient(to bottom,var(--a) 0 18px,transparent 18px 28px)}
.month{position:relative;margin:10px 0 14px}
.month>h3{margin:0 0 6px;font-size:18px}
.month>h3:before{content:"";position:absolute;right:-25px;top:6px;width:16px;height:16px;border-radius:50%;background:#fff;border:4px solid var(--a)}
.stop{display:flex;gap:8px;align-items:flex-start;background:#fff;border-radius:14px;padding:8px 10px;margin:6px 0;box-shadow:0 1px 6px #0001;border-right:6px solid #ccc}
.stop .e{font-size:24px}.stop .tx{flex:1}.stop small{color:var(--mute);display:block;font-size:13px}
.stop button{background:transparent;color:#999;min-height:36px;padding:2px 8px}
.empty{color:var(--mute);font-style:italic}
.card3d{width:min(560px,100%);min-height:260px;border-radius:24px;color:#fff;padding:24px 18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;box-shadow:0 6px 22px #0003;text-align:center;animation:pop .35s ease}
.card3d .em{font-size:54px}.card3d .q{font-size:clamp(23px,4.6vw,40px);font-weight:800;line-height:1.35}.card3d .dk{font-size:16px;opacity:.9}
@keyframes pop{from{transform:scale(.92) rotate(-2deg);opacity:.3}to{transform:none;opacity:1}}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{background:#fff;color:var(--ink);border:2px solid var(--soft);border-radius:99px;padding:6px 12px;min-height:40px;font-weight:600;font-size:16px}
.awardgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.award{background:#fff;color:var(--ink);border:2px solid var(--soft);border-radius:16px;min-height:110px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-weight:600;padding:8px}
.award .e{font-size:32px}.award small{font-weight:400;color:var(--mute);font-size:13px;line-height:1.3}
.award.done{border-color:var(--a);background:var(--soft)}
.reveal{background:radial-gradient(circle at 50% 30%,#fff7c2,#ffd36b);border:6px solid #e0a100;color:#3a2a00}
.reveal .name{font-size:clamp(28px,6vw,54px);font-weight:900}
.confetti{position:fixed;inset:0;pointer-events:none;z-index:20;overflow:hidden}
.confetti i{position:absolute;top:-20px;width:10px;height:14px;border-radius:3px;animation:fall 2.2s linear forwards}
@keyframes fall{to{transform:translateY(110vh) rotate(720deg)}}
.teams{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.team{background:#fff;border-radius:14px;padding:8px 12px;box-shadow:0 1px 6px #0002;text-align:center;min-width:110px}
.team b{display:block;font-size:30px}
.letter{background:#fffdf7 repeating-linear-gradient(to bottom,transparent 0 37px,#e9e1d3 37px 38px);border-radius:16px;padding:16px;box-shadow:0 3px 14px #0002;border:2px solid #efe3cf}
.letter textarea{background:transparent;border:2px dashed #d8cbb4}
.cloud{min-height:220px;display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;justify-content:center;padding:16px;background:#fff;border-radius:20px;box-shadow:0 3px 14px #0002}
.cloud span{font-weight:800;line-height:1.1;animation:pop .4s ease}
.breath{width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,#fff,var(--a));margin:16px auto;transform:scale(.6);transition:transform 4s ease-in-out}
.breath.in{transform:scale(1.1)}
table{border-collapse:collapse;width:100%;font-size:16px;background:#fff}
td,th{border:1px solid #e3d9ea;padding:8px;text-align:right;vertical-align:top}th{background:var(--soft)}
.tt{overflow-x:auto}
details{background:#fff;border-radius:14px;padding:8px 12px;margin:8px 0;box-shadow:0 1px 6px #0001}
summary{font-weight:700;cursor:pointer;min-height:40px;display:flex;align-items:center}
ul,ol{padding-right:22px;margin:6px 0}li{margin:3px 0}
.foot{display:flex;align-items:center;justify-content:center;gap:10px;padding:12px;background:#fff;border-top:3px solid var(--a);font-size:16px;color:#4a4050}
.foot img{border-radius:8px}
#toast{position:fixed;bottom:80px;left:50%;transform:translateX(-50%);background:#222;color:#fff;padding:10px 18px;border-radius:12px;opacity:0;transition:opacity .3s;pointer-events:none;z-index:30}
#toast.on{opacity:1}
.files a{display:flex;align-items:center;gap:10px;background:#fff;border-radius:14px;padding:12px;margin:8px 0;color:var(--ink);text-decoration:none;box-shadow:0 1px 6px #0001;min-height:56px;font-weight:600}
.big-a{display:inline-block;background:var(--a);color:#fff;text-decoration:none;padding:12px 18px;border-radius:14px;font-weight:700}
.fs-on header,.fs-on .foot{display:none}
@media (min-width:800px){body{font-size:19px}.grid{grid-template-columns:repeat(4,1fr)}.bingo button{font-size:16px;min-height:100px}}
@media (max-width:380px){.ttl b{font-size:17px}.bingo button{font-size:12.5px;min-height:86px;padding:4px}}

@media (max-width:799px){.top{position:static}}
@media (max-width:380px){.sw button{font-size:14px;padding:6px 4px}}

.files a.big-a{display:inline-flex;background:var(--a);color:#fff;box-shadow:none;margin:0}
.files a.big-a.w{background:#2b579a}
