.learn{overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;height:100%;position:relative;overflow-y:auto}.learn-head{z-index:2;padding:calc(env(safe-area-inset-top) + 8px) 16px 12px;background:#efe0bd;gap:10px;display:grid;position:sticky;top:0;box-shadow:0 4px 14px #4e2f1b2e}.learn-bar,.learn-head>.learn-seg{width:100%;max-width:688px;margin:0 auto}.learn-bar{align-items:center;gap:12px;display:flex}.learn-title{min-width:0;font-family:var(--serif);color:var(--lapis);flex:1;margin:0;font-size:1.7rem;font-weight:400;line-height:1.1}.learn-seg{background:var(--parchment-edge);border-radius:14px;padding:4px;display:flex}.learn-seg-btn{min-height:44px;color:var(--wood-dark);background:0 0;border:0;border-radius:10px;flex:1;padding:0 10px;font-size:1.02rem;font-weight:700}.learn-seg-btn.is-active{background:var(--parchment);color:var(--ink);box-shadow:0 2px #4e2f1b33}.learn-seg.is-small{border-radius:12px;flex:none;padding:3px}.learn-seg.is-small .learn-seg-btn{flex:none;min-width:72px;min-height:44px}.learn-main{max-width:720px;padding:8px 16px calc(env(safe-area-inset-bottom) + 32px);margin:0 auto}.learn-hint{color:var(--wood-darker);margin:12px 4px 4px;font-weight:700}.learn-testament{margin-top:18px}.learn-testament-head{justify-content:space-between;align-items:baseline;gap:12px;margin:0 4px 10px;display:flex}.learn-testament-head h2{font-family:var(--serif);color:var(--lapis-dark);margin:0;font-size:1.6rem;font-weight:400}.learn-count{color:var(--wood-darker);flex:none;font-weight:700}.learn-shelf{border-radius:var(--radius);background:var(--parchment);box-shadow:inset 10px 0 0 var(--band,var(--wood)), 0 4px 0 var(--parchment-edge), 0 8px 18px #4e2f1b26;margin-bottom:14px;padding:12px 14px 12px 24px}.learn-shelf-name{font-family:var(--serif);color:var(--ink);margin:0 0 10px;font-size:1.2rem;font-weight:400}.learn-books{flex-wrap:wrap;gap:8px;margin:0;padding:0 2px;list-style:none;display:flex}.learn-chip{min-height:44px;color:var(--ink);text-align:left;box-shadow:0 3px 0 var(--parchment-edge);background:#f7ecd2;border:0;border-radius:12px;align-items:center;gap:8px;padding:4px 12px 4px 5px;font-size:1.02rem;font-weight:700;transition:transform 80ms,box-shadow 80ms;display:inline-flex}.learn-chip:active{box-shadow:0 1px 0 var(--parchment-edge);transform:translateY(2px)}.learn-chip-num{min-width:32px;height:32px;color:var(--lapis);font-variant-numeric:tabular-nums;background:#2f4a8a1f;border-radius:9px;flex:none;place-items:center;padding:0 4px;font-size:.95rem;display:grid}.learn-chip.is-selected{background:var(--lapis);color:#fbe7b5;box-shadow:inset 0 0 0 3px var(--gold), 0 3px 0 var(--lapis-dark)}.learn-chip.is-selected .learn-chip-num{background:var(--gold);color:var(--wood-darker)}.learn-plank{background:var(--wood);height:8px;box-shadow:0 3px 0 var(--wood-dark);border-radius:4px;margin:8px -4px 0}.learn-quiz{gap:14px;padding-top:12px;display:grid}.learn-field{gap:8px;display:grid}.learn-field-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.learn-label{color:var(--wood-darker);margin:0 4px;font-weight:700}.learn-scopes{flex-wrap:wrap;gap:8px;display:flex}.learn-scope{min-height:44px;color:var(--ink);box-shadow:0 3px 0 var(--parchment-edge);background:#f7ecd2;border:0;border-radius:999px;padding:0 14px;font-size:.98rem;font-weight:700}.learn-scope.is-active{background:var(--lapis);color:#fbe7b5;box-shadow:inset 0 0 0 3px var(--gold), 0 3px 0 var(--lapis-dark)}.learn-card{margin-top:4px;padding:16px 16px 20px}.learn-card-top{justify-content:space-between;align-items:center;gap:12px;min-height:30px;display:flex}.learn-card-scope{color:var(--ink-soft);font-weight:700}.learn-streak{background:var(--gold);color:var(--wood-darker);font-variant-numeric:tabular-nums;border-radius:999px;flex:none;padding:3px 12px;font-weight:700}.learn-streak.is-empty{visibility:hidden}.learn-question{font-family:var(--font);text-align:center;color:var(--ink);margin:14px 0 18px;font-size:1.4rem;font-weight:700;line-height:1.3}.learn-question:focus{outline:none}.learn-question:focus-visible{outline:3px solid var(--lapis);outline-offset:4px;border-radius:6px}.learn-options{gap:12px;display:grid}.learn-option{border-radius:var(--radius);min-height:60px;color:var(--ink);box-shadow:0 4px 0 var(--parchment-edge), 0 6px 14px #4e2f1b1f;background:#f7ecd2;border:0;padding:8px 16px;font-size:1.3rem;font-weight:700;transition:transform 80ms,box-shadow 80ms,background-color .15s,opacity .15s}.learn-option:not([aria-disabled=true]):active{box-shadow:0 1px 0 var(--parchment-edge), 0 2px 6px #4e2f1b1f;transform:translateY(3px)}.learn-option[aria-disabled=true]{cursor:default}.learn-option.is-right{color:var(--wood-darker);box-shadow:inset 0 0 0 3px #fbe7b5, 0 4px 0 var(--gold-dark), 0 6px 16px #a8761f59;background:#e9b44c;animation:.5s learn-glow}.learn-option.is-wrong{box-shadow:inset 0 0 0 3px var(--amber), 0 4px 0 var(--parchment-edge);background:#fff1d6;animation:.45s learn-shake}.learn-option.is-dim{opacity:.55}.learn-feedback{text-align:center;min-height:2.6rem;margin-top:14px}.learn-feedback p{margin:0}.learn-praise{font-family:var(--serif);color:var(--lapis);font-size:1.6rem;line-height:1.2}.learn-not-quite{color:var(--ink);font-size:1.1rem;font-weight:700;line-height:1.35}.btn.learn-next{width:100%;margin-top:10px}.learn-seg-btn:focus-visible,.learn-chip:focus-visible,.learn-scope:focus-visible,.learn-option:focus-visible{outline:3px solid var(--lapis);outline-offset:2px}.learn-chip.is-selected:focus-visible,.learn-scope.is-active:focus-visible{outline-color:var(--lapis-dark);outline-offset:3px}@keyframes learn-shake{20%{transform:translate(-6px)}40%{transform:translate(5px)}60%{transform:translate(-3px)}80%{transform:translate(2px)}}@keyframes learn-glow{40%{transform:scale(1.03)}}@media (width>=640px){.learn-title{font-size:2rem}}@media (prefers-reduced-motion:reduce){.learn-option,.learn-chip{transition:none}.learn-option.is-right,.learn-option.is-wrong{animation:none}}.learn-field-row{background:#efe0bdd9;border-radius:14px;padding:6px 6px 6px 12px}.learn-scope-pill{background:var(--parchment-edge);min-height:44px;color:var(--wood-darker);font:inherit;border:0;border-radius:999px;padding:0 14px;font-weight:700}.learn-scope-pill:focus-visible{outline:3px solid var(--lapis);outline-offset:2px}.learn-quiz>.learn-field{margin-top:14px}.learn-match{gap:14px;display:grid}.learn-match-intro{color:var(--ink-soft);text-align:center;margin:0;font-weight:700}.learn-match-scopes{justify-content:center}.learn-match-board{grid-template-columns:1fr 1fr;gap:10px;padding:14px;display:grid}.learn-match-col{gap:10px;margin:0;padding:0;list-style:none;display:grid}.learn-match-item{width:100%;min-height:64px;box-shadow:0 3px 0 var(--parchment-edge);color:var(--ink);font:inherit;text-align:center;background:#f7ecd2;border:0;border-radius:14px;place-items:center;padding:6px 8px;font-size:1.05rem;font-weight:700;line-height:1.15;transition:background .15s,box-shadow .15s;display:grid}.learn-match-item.is-hebrew{gap:2px}.learn-match-translit{font-family:var(--serif);color:var(--lapis);font-size:1.1rem;font-weight:400}.learn-match-he{color:var(--ink-soft);font-size:.95rem;font-weight:400}.learn-match-item.is-picked{box-shadow:inset 0 0 0 3px var(--lapis), 0 3px 0 var(--parchment-edge)}.learn-match-item.is-matched{background:var(--gold);box-shadow:0 3px 0 var(--gold-dark);color:var(--wood-darker)}.learn-match-item.is-matched .learn-match-translit,.learn-match-item.is-matched .learn-match-he{color:var(--wood-darker)}.learn-match-item.is-miss{box-shadow:inset 0 0 0 3px #ffb35c, 0 3px 0 var(--parchment-edge);animation:.4s learn-match-shake}.learn-match-item:disabled{cursor:default}.learn-match-item:focus-visible{outline:3px solid var(--lapis);outline-offset:2px}.learn-match-done{text-align:center;justify-items:center;gap:10px;display:grid}.learn-match-done p{font-family:var(--serif);color:var(--lapis);align-items:center;gap:8px;margin:0;font-size:1.4rem;display:inline-flex}@keyframes learn-match-shake{25%{transform:translate(-4px)}75%{transform:translate(4px)}}@media (prefers-reduced-motion:reduce){.learn-match-item.is-miss{animation:none}}.learn-scope.learn-scope-he{justify-items:center;gap:1px;padding-top:6px;padding-bottom:6px;line-height:1.1;display:inline-grid}.learn-scope-he-name{font-family:var(--serif);font-size:1.02rem;font-weight:400}.learn-scope-he-sub{opacity:.75;font-size:.78rem;font-weight:700}.learn-match-progress{text-align:center;color:var(--ink-soft);margin:0;font-weight:700}@media (width>=700px){.learn-match-col{grid-template-columns:1fr 1fr;align-content:start}}.learn-section{border-left:8px solid var(--band);box-shadow:0 3px 0 var(--parchment-edge);background:#f7ecd2;border-radius:14px;margin-bottom:10px;overflow:hidden}.learn-section-head{width:100%;min-height:60px;color:var(--ink);font:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:8px 12px 8px 14px;display:flex}.learn-section-head:focus-visible{outline:3px solid var(--lapis);outline-offset:-3px}.learn-section-text{flex:1;min-width:0;display:grid}.learn-section-name{font-family:var(--serif);font-size:1.2rem}.learn-section-peek{color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:700;overflow:hidden}.learn-section-chevron{color:var(--wood-dark);flex:none;transition:transform .2s}.learn-section.is-open .learn-section-chevron{transform:rotate(180deg)}.learn-rack{padding:0 12px 14px}.learn-toc{background:#fdf6e4;border-radius:12px;margin:0;padding:2px 0;list-style:none;box-shadow:inset 0 0 0 1px #e6d3a8}.learn-toc>li+li{border-top:1px solid #eadcb9}.learn-toc-row{width:100%;min-height:52px;color:var(--ink);font:inherit;text-align:left;background:0 0;border:0;border-radius:12px;align-items:center;gap:12px;padding:6px 10px;display:flex}.learn-toc-row:active{background:#f3e4bf}.learn-toc-row:focus-visible{outline:3px solid var(--lapis);outline-offset:-3px}.learn-plaque{background:var(--lapis);width:34px;height:34px;box-shadow:inset 0 0 0 3px var(--gold);color:#fbe7b5;font-variant-numeric:tabular-nums;border-radius:999px;flex:none;place-items:center;font-size:.95rem;font-weight:700;display:grid}.learn-toc-name{white-space:nowrap;text-overflow:ellipsis;flex:none;max-width:70%;font-size:1.1rem;font-weight:700;overflow:hidden}.learn-toc-leader{border-bottom:2px dotted #cdb586;flex:1;align-self:center;min-width:12px;margin-top:.5em}.learn-toc-go{color:var(--band);flex:none}.btn.learn-play-section{justify-content:center;align-items:center;gap:10px;width:100%;min-height:56px;margin-top:12px;display:flex}@font-face{font-family:Andika;font-weight:400;font-display:swap;src:url(/fonts/andika-400-latin.woff2)format("woff2")}@font-face{font-family:Andika;font-weight:700;font-display:swap;src:url(/fonts/andika-700-latin.woff2)format("woff2")}@font-face{font-family:Young Serif;font-weight:400;font-display:swap;src:url(/fonts/young-serif-400-latin.woff2)format("woff2")}:root{--lapis:#2f4a8a;--lapis-dark:#1b2a55;--gold:#e2a93b;--gold-dark:#a8761f;--stone-1:#e2c08e;--stone-2:#d2a873;--sand-1:#f6e9cc;--sand-2:#e7cc9c;--parchment:#ecdcb6;--parchment-edge:#d9c191;--wood:#94613a;--wood-dark:#6b4227;--wood-darker:#4e2f1b;--clay:#b5452f;--clay-dark:#8f3524;--ink:#3a2414;--ink-soft:#6b5240;--amber:#ffb35c;--leaf:#7d8a3a;--radius:16px;--font:Andika, ui-rounded, "Segoe UI", Roboto, system-ui, sans-serif;--serif:"Young Serif", Georgia, "Noto Serif", serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{overscroll-behavior:none;font-family:var(--font);color:var(--ink);background-color:var(--stone-1);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background-color:#c9a26c;background-image:radial-gradient(90% 60% at 50% 38%,#ffe2aa99,#ffe2aa00 75%),url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .35  0 0 0 0 .22  0 0 0 0 .1  0 0 0 .22 0'/></filter><rect width='200' height='200' filter='url(%23n)'/></svg>"),url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='168'><rect width='240' height='168' fill='%23c9a26c'/><rect x='2.5' y='2.5' width='95' height='51' rx='10' fill='%23e6c896'/><rect x='8' y='6' width='84' height='6' rx='3' fill='%23fff3d6' opacity='.35'/><rect x='102.5' y='2.5' width='75' height='51' rx='10' fill='%23ddbb86'/><rect x='108' y='6' width='64' height='6' rx='3' fill='%23fff3d6' opacity='.35'/><rect x='182.5' y='2.5' width='55' height='51' rx='10' fill='%23e9cf9f'/><rect x='188' y='6' width='44' height='6' rx='3' fill='%23fff3d6' opacity='.35'/><rect x='-47.5' y='58.5' width='105' height='51' rx='10' fill='%23dfbf8a'/><rect x='-42' y='62' width='94' height='6' rx='3' fill='%23fff3d6' opacity='.35'/><rect x='62.5' y='58.5' width='125' height='51' rx='10' fill='%23e7cb98'/><rect x='68' y='62' width='114' height='6' rx='3' fill='%23fff3d6' opacity='.35'/><rect x='192.5' y='58.5' width='105' height='51' rx='10' fill='%23dfbf8a'/><rect x='198' y='62' width='94' height='6' rx='3' fill='%23fff3d6' opacity='.35'/><rect x='-107.5' y='114.5' width='135' height='51' rx='10' fill='%23e4c590'/><rect x='-102' y='118' width='124' height='6' rx='3' fill='%23fff3d6' opacity='.35'/><rect x='32.5' y='114.5' width='95' height='51' rx='10' fill='%23dab783'/><rect x='38' y='118' width='84' height='6' rx='3' fill='%23fff3d6' opacity='.35'/><rect x='132.5' y='114.5' width='135' height='51' rx='10' fill='%23e4c590'/><rect x='138' y='118' width='124' height='6' rx='3' fill='%23fff3d6' opacity='.35'/></svg>");background-size:100% 100%,200px 200px,240px 168px;position:fixed;inset:0;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation}.app{width:100%;height:100dvh;position:relative}.btn{border-radius:var(--radius);background:var(--parchment);min-height:52px;color:var(--ink);box-shadow:0 4px 0 var(--parchment-edge), 0 6px 14px #4e2f1b2e;border:0;padding:0 24px;font-size:1.1rem;font-weight:800;transition:transform 80ms,box-shadow 80ms}.btn:active{box-shadow:0 1px 0 var(--parchment-edge), 0 2px 6px #4e2f1b2e;transform:translateY(3px)}.btn-primary{background:var(--lapis);color:#fbe7b5;box-shadow:inset 0 0 0 3px var(--gold), 0 4px 0 var(--lapis-dark), 0 6px 14px #1b2a554d}.btn-primary:active{box-shadow:inset 0 0 0 3px var(--gold), 0 1px 0 var(--lapis-dark), 0 2px 6px #1b2a554d}.btn:focus-visible,.icon-btn:focus-visible,.lang-option:focus-visible,.level-btn:focus-visible,.hud-level:focus-visible{outline:3px solid var(--lapis);outline-offset:2px}.btn-big{border-radius:20px;min-width:220px;min-height:64px;font-size:1.6rem}.btn-quiet{box-shadow:none;color:var(--wood-dark);text-underline-offset:4px;background:0 0;text-decoration:underline}.icon-btn{background:var(--parchment);width:44px;height:44px;color:var(--wood-dark);box-shadow:0 3px 0 var(--parchment-edge);border:0;border-radius:12px;flex:none;place-items:center;font-size:1.2rem;font-weight:800;display:grid}.lang-toggle{background:var(--parchment-edge);border-radius:12px;flex:none;padding:3px;display:flex}.lang-option{min-width:44px;height:44px;color:var(--wood-dark);background:0 0;border:0;border-radius:9px;font-size:.9rem;font-weight:800}.lang-option.is-active{background:var(--parchment);color:var(--ink);box-shadow:0 2px #4e2f1b33}input{font:inherit;-webkit-user-select:text;user-select:text}.btn-gold{color:var(--wood-darker);background:#e9b44c;box-shadow:0 4px #a8761f,0 6px 14px #4e2f1b38}.btn-gold:active{box-shadow:0 1px #a8761f,0 2px 6px #4e2f1b38}.btn-wide{width:100%;margin-top:16px}.title-screen{overscroll-behavior:contain;touch-action:pan-y;height:100%;padding:calc(env(safe-area-inset-top) + 12px) 16px calc(env(safe-area-inset-bottom) + 24px);flex-direction:column;display:flex;overflow-y:auto}.title-top{justify-content:space-between;align-items:center;display:flex}.title-body{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:14px;display:flex}.title-scroll{width:min(100%,330px);margin-bottom:18px;animation:.9s cubic-bezier(.2,.9,.3,1) both unroll;position:relative}.title-sheet{text-align:center;background:linear-gradient(90deg,#a0783c2e,#0000 12% 88%,#a0783c2e),#efe0bd;margin:0 18px;padding:32px 16px 18px;box-shadow:0 10px 24px #4e2f1b47;container-type:inline-size}.rod{z-index:1;background:linear-gradient(#f6ead0,#efe0bd 55%,#cfb27c);border-radius:15px;height:30px;display:block;position:relative;box-shadow:0 4px 8px #4e2f1b4d}.rod:before,.rod:after{content:"";background:var(--wood-dark);border-radius:9px;width:26px;height:24px;position:absolute;top:3px}.rod:before{left:-14px}.rod:after{right:-14px}.rod-top{margin-bottom:-10px}.rod-bottom{margin-top:-10px}.title-name{font-family:var(--serif);letter-spacing:-.01em;color:var(--lapis);margin:0;font-size:min(4.6rem,22cqi);font-weight:400;line-height:1}.title-tagline{color:var(--ink-soft);margin:12px 0 0;font-size:1.15rem;font-weight:700}.title-player{border-top:2px solid var(--gold);width:fit-content;font-family:var(--serif);color:var(--ink);margin:14px auto 0;padding:2px 14px;font-size:min(1.8rem,10cqi)}.challenge-card{border-radius:var(--radius);max-width:340px;box-shadow:inset 0 0 0 3px var(--gold);background:#fff4dc;margin:0 0 6px;padding:12px 16px;font-weight:700;line-height:1.35}@keyframes unroll{0%{clip-path:inset(40% 0);transform:scale(.96)}to{clip-path:inset(0);transform:none}}.game{pointer-events:none;position:absolute;inset:0}.stage{touch-action:none;pointer-events:none;inset:0;position:absolute!important}.stage.is-playing{pointer-events:auto}.stage.is-hidden{visibility:hidden}.fade-canvas{opacity:0;transition:opacity .45s ease-out}.fade-canvas.is-ready{opacity:1}@media (prefers-reduced-motion:reduce){.fade-canvas{transition:none}}.hud{padding:calc(env(safe-area-inset-top) + 8px) 12px 0;pointer-events:none;position:absolute;inset:0 0 auto}.hud-bar{pointer-events:auto;align-items:center;gap:8px;max-width:720px;margin:0 auto;display:flex}.hud-level{background:#efe0bdd9;border:0;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:6px;min-width:0;min-height:44px;padding:0 10px;font-size:clamp(.88rem,3.7vw,1.05rem);font-weight:800;display:flex}.hud-level-name{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.hud-round{background:var(--lapis);color:#fbe7b5;font-variant-numeric:tabular-nums;border-radius:999px;flex:none;padding:1px 8px;font-size:.85rem}.hud-time{background:#efe0bdd9;border-radius:12px;flex-direction:column;flex:none;justify-content:center;align-items:flex-end;min-height:44px;padding:0 10px;line-height:1.1;display:flex}.timer{font-variant-numeric:tabular-nums;color:var(--wood-darker);font-size:1.35rem;font-weight:900}.hud-best{color:var(--ink-soft);font-variant-numeric:tabular-nums;font-size:.82rem;font-weight:700}.hud-message{left:50%;bottom:calc(env(safe-area-inset-bottom) + 10px);text-align:center;color:#fbe7b5;background:#2b1d14d1;border-radius:14px;width:max-content;max-width:calc(100% - 24px);margin:0;padding:10px 16px;font-size:.98rem;font-weight:700;line-height:1.3;position:fixed;transform:translate(-50%)}.hud-message.is-almost{color:var(--ink);box-shadow:inset 0 0 0 3px var(--amber), 0 6px 16px #4e2f1b4d;background:#fff1d6;animation:.6s nudge}@keyframes nudge{30%{transform:translate(-50%)scale(1.05)}}.card{background:var(--parchment);box-shadow:0 6px 0 var(--parchment-edge), 0 18px 40px #4e2f1b4d;border-radius:22px}.card-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:18px;display:flex}.celebration{padding:16px 16px calc(env(safe-area-inset-bottom) + 24px);pointer-events:none;place-items:end center;display:grid;position:absolute;inset:0}.celebration-card{text-align:center;pointer-events:auto;opacity:0;width:min(100%,360px);padding:22px 20px;animation:.5s cubic-bezier(.3,1.5,.6,1) .8s forwards pop-in}.celebration-title{font-family:var(--serif);color:var(--lapis);margin:0;font-size:2.5rem;font-weight:400}.celebration-time{font-variant-numeric:tabular-nums;margin:6px 0 0;font-size:1.8rem;font-weight:900}.celebration-time .label,.celebration-best{color:var(--ink-soft);font-size:1rem;font-weight:700}.celebration-best{margin:4px 0 0}.badge{background:var(--gold);color:var(--wood-darker);border-radius:999px;margin:8px 0 0;padding:6px 14px;font-weight:700;display:inline-block}@keyframes pop-in{0%{opacity:0;transform:translateY(30px)scale(.9)}to{opacity:1;transform:none}}.confetti span{opacity:0;border-radius:3px;width:10px;height:16px;animation-name:fall;animation-timing-function:ease-in;animation-fill-mode:forwards;position:absolute;top:-20px}@keyframes fall{0%{opacity:1;transform:translateY(0)rotate(0)}to{opacity:.9;transform:translateY(105dvh)rotate(540deg)}}dialog{max-width:none;color:inherit;border:0;padding:0}dialog:modal{overscroll-behavior:contain}dialog::backdrop{overscroll-behavior:contain;background:#4e2f1b59;overflow:hidden}.sheet{width:min(100%,480px);max-height:85dvh;padding-bottom:env(safe-area-inset-bottom);border-radius:22px 22px 0 0;flex-direction:column;margin:auto auto 0;animation:.25s ease-out slide-up}.sheet[open]{display:flex}@media (orientation:landscape) and (height<=500px){.app:has(.rotate-hint) dialog[open]{display:none}}.sheet-head{justify-content:space-between;align-items:center;padding:16px 16px 8px;display:flex}.sheet-head h2{font-family:var(--serif);color:var(--lapis);margin:0;font-size:1.6rem;font-weight:400}.sheet-body{overscroll-behavior:contain;touch-action:pan-y;padding:0 16px 16px;overflow-y:auto}.sheet-body h3{color:var(--ink-soft);margin:14px 0 8px;font-size:1rem;font-weight:700}.level-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.level-btn{border:0;border-left:8px solid var(--wood);width:100%;min-height:52px;box-shadow:0 3px 0 var(--parchment-edge);text-align:left;background:#f7ecd2;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:0 16px 0 12px;display:flex}.level-name{font-size:1.05rem;font-weight:800}.level-meta{color:var(--ink-soft);flex:none;font-size:.85rem;font-weight:700}.level-btn:disabled{cursor:default;opacity:.55;box-shadow:none}@keyframes slide-up{0%{opacity:0;transform:translateY(40px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{animation-duration:.01ms!important;animation-iteration-count:1!important}.celebration-card{animation-delay:0s!important}.btn-next-fill{display:none}}.celebration-challenge{color:var(--ink-soft);margin:10px 0 0;font-weight:800}.celebration-challenge.is-beat{color:#4f5a17;font-size:1.15rem}.field{color:var(--ink-soft);gap:6px;font-size:.9rem;font-weight:800;display:grid}.field input{border:3px solid var(--parchment-edge);min-height:52px;color:var(--ink);background:#fffaf0;border-radius:14px;outline:none;padding:0 14px;font-size:1.15rem;font-weight:800}.field input:focus{border-color:#e9b44c}.cert-preview{aspect-ratio:4/5;place-items:center;max-height:46dvh;margin:14px auto 0;display:grid}.cert-preview img{border-radius:10px;max-width:100%;max-height:100%;box-shadow:0 8px 24px #4e2f1b4d}.cert-note{text-align:center;color:#4f5a17;margin:12px 0 0;font-weight:700}.daily-card{border-radius:var(--radius);width:min(100%,330px);box-shadow:inset 0 0 0 3px var(--gold), 0 4px 0 var(--gold-dark);text-align:left;background:#efe0bdeb;border:0;gap:2px;margin-top:14px;padding:12px 16px;display:grid}.daily-card:active{box-shadow:inset 0 0 0 3px var(--gold), 0 1px 0 var(--gold-dark);transform:translateY(3px)}.daily-card:focus-visible{outline:3px solid var(--lapis);outline-offset:2px}.daily-title{font-family:var(--serif);color:var(--lapis);font-size:1.2rem}.daily-level{font-weight:700}.daily-done,.daily-streak{color:var(--ink-soft);font-size:.92rem;font-weight:700}.title-links{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:14px;display:flex}.hud-message.is-round{background:var(--lapis);color:#fbe7b5;box-shadow:inset 0 0 0 3px var(--gold), 0 6px 16px #1b2a5559}.book-meta{color:var(--ink-soft);margin:0;font-weight:700}.book-summary{max-width:60ch;margin:10px 0 0;font-size:1.1rem;line-height:1.5}.book-links{margin:0;padding-left:20px;line-height:1.8}.book-links a{color:var(--lapis);font-weight:700}.names-row{background:#f7ecd2;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;margin:2px 0 6px;padding:8px 8px 8px 14px;font-weight:700;display:flex}.names-option{padding:0 12px}.pile-bubble{background:var(--lapis);color:#fbe7b5;min-width:48px;height:48px;box-shadow:inset 0 0 0 3px var(--gold), 0 4px 0 var(--lapis-dark), 0 8px 18px #1b2a5559;border:0;border-radius:999px;place-items:center;padding:0 10px;font-size:1.15rem;font-weight:700;animation:.3s ease-out bubble-in;display:grid}.pile-bubble.is-open{background:var(--gold);color:var(--wood-darker);box-shadow:inset 0 0 0 3px var(--lapis), 0 4px 0 var(--gold-dark), 0 8px 18px #1b2a5559}.pile-bubble:active{transform:translateY(2px)}.pile-bubble:focus-visible{outline:3px solid var(--gold);outline-offset:2px}@keyframes bubble-in{0%{opacity:0;transform:scale(.9)}}.btn-next{width:100%;min-height:60px;margin-top:16px;padding:8px 16px;font-size:1.2rem;line-height:1.2;display:block;position:relative;overflow:hidden}.btn-next-label{position:relative}.btn-next-fill{background:linear-gradient(90deg,#fbe7b51f,#fbe7b552);width:0;position:absolute;inset:0}.btn-next.is-counting .btn-next-fill{animation-name:next-fill;animation-timing-function:linear;animation-fill-mode:forwards}@keyframes next-fill{to{width:100%}}.celebration-more{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:12px;display:flex}.btn-small{white-space:nowrap;min-height:44px;padding:0 11px;font-size:.9rem}.celebration-stay{min-height:44px;color:var(--ink-soft);text-underline-offset:3px;background:0 0;border:0;border-radius:999px;margin:8px auto 0;padding:6px 14px;font-weight:700;text-decoration:underline;display:block}.hud-message.is-top{top:calc(env(safe-area-inset-top) + 64px);bottom:auto}.name-button{min-height:44px;color:inherit;font:inherit;cursor:text;background:0 0;border:0;padding:0 12px}.name-button:focus-visible,.name-form input:focus-visible{outline:3px solid var(--lapis);outline-offset:2px}.name-form{gap:6px;max-width:240px;margin:16px auto 0;display:grid}.name-form label{color:var(--ink);font-weight:700}.name-form input{border:0;border-bottom:3px solid var(--gold);width:100%;min-width:0;min-height:48px;color:var(--ink);font:inherit;font-family:var(--serif);text-align:center;-webkit-user-select:text;user-select:text;background:#fffaf0b3;border-radius:10px 10px 0 0;outline:none;padding:0 12px;font-size:1.25rem}.title-body{justify-content:flex-start}.title-body>:first-child{margin-top:auto}.title-body>:last-child{margin-bottom:auto}.rotate-hint{display:none}@media (orientation:landscape) and (height<=500px){.rotate-hint{z-index:50;pointer-events:auto;background:var(--lapis-dark);color:#fbe7b5;font-family:var(--serif);text-align:center;place-items:center;padding:24px;font-size:1.6rem;display:grid;position:fixed;inset:0}}.player-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.player-list li{gap:8px;display:flex}.player-btn{min-height:52px;box-shadow:0 3px 0 var(--parchment-edge);font-family:var(--serif);text-align:left;background:#f7ecd2;border:0;border-radius:14px;flex:1;padding:0 16px;font-size:1.25rem}.player-btn.is-current{background:var(--lapis);color:#fbe7b5;box-shadow:inset 0 0 0 3px var(--gold), 0 3px 0 var(--lapis-dark)}.player-forget{box-shadow:none;color:var(--ink-soft);background:0 0;align-self:center}.player-add{gap:8px;margin-top:14px;display:flex}.player-add input{border:3px solid var(--parchment-edge);min-width:0;min-height:52px;font:inherit;-webkit-user-select:text;user-select:text;background:#fffaf0;border-radius:14px;outline:none;flex:1;padding:0 14px;font-size:1.1rem;font-weight:700}.player-add input:focus{border-color:var(--lapis)}.player-note{color:var(--ink-soft);margin:12px 0 0;font-size:.9rem}.records{text-align:left;max-width:260px;margin:12px auto 0}.records-title{color:var(--ink-soft);text-align:center;margin:0 0 4px;font-size:.9rem;font-weight:700}.records ol{margin:0;padding-left:22px}.records li span:last-child{float:right;font-variant-numeric:tabular-nums}.records li.is-me{color:var(--lapis);font-weight:700}.title-screen{isolation:isolate;position:relative}.title-backdrop{z-index:-1;pointer-events:none;animation:.8s ease-out backdrop-in;position:fixed;inset:0}.title-backdrop:after{content:"";background:linear-gradient(#2b1d1400 60%,#2b1d142e);position:absolute;inset:0}@keyframes backdrop-in{0%{opacity:0}}.level-meta{align-items:center;gap:6px;display:inline-flex}.level-btn.is-done .level-meta{color:var(--wood-darker);font-variant-numeric:tabular-nums}.level-fold{margin-top:0}.level-fold summary{min-height:48px;color:var(--ink-soft);cursor:pointer;align-items:center;gap:8px;margin:14px 0 0;font-size:1rem;font-weight:700;list-style:none;display:flex}.level-fold summary::-webkit-details-marker{display:none}.level-fold summary:focus-visible{outline:3px solid var(--lapis);outline-offset:2px;border-radius:8px}.level-fold-toggle{background:var(--parchment-edge);color:var(--wood-darker);border-radius:999px;align-items:center;gap:4px;margin-left:auto;padding:4px 10px 4px 12px;font-size:.9rem;display:inline-flex}.level-fold .when-open,.level-fold[open] .when-closed{display:none}.level-fold[open] .when-open{display:inline}.level-fold-chevron{flex:none;transition:transform .2s}.level-fold[open] .level-fold-chevron{transform:rotate(180deg)}.level-fold[open] .level-list{margin-top:8px}.level-fold-count{background:var(--parchment-edge);color:var(--wood-darker);border-radius:999px;padding:1px 8px;font-size:.85rem}.picker-settings{border-top:2px dashed var(--parchment-edge);margin-top:22px;padding-top:6px}.icon{vertical-align:-.2em;flex:none}.hint-lamp{left:12px;bottom:calc(env(safe-area-inset-bottom) + 64px);background:var(--lapis);width:60px;height:60px;box-shadow:inset 0 0 0 3px var(--gold), 0 4px 0 var(--lapis-dark), 0 8px 18px #1b2a5566;pointer-events:auto;border:0;border-radius:999px;place-items:center;display:grid;position:fixed}.hint-lamp:active{transform:translateY(2px)}.hint-lamp:focus-visible{outline:3px solid var(--lapis);outline-offset:2px}.confirm-card{text-align:center;width:min(100% - 32px,340px);margin:auto;padding:20px}.confirm-card h2{font-family:var(--serif);color:var(--lapis);margin:0;font-size:1.7rem;font-weight:400}.confirm-card p{color:var(--ink-soft);margin:10px 0 0;line-height:1.4}.settings-body .names-row{margin:0 0 10px}.picker-settings-link{background:var(--parchment-edge);min-height:44px;color:var(--wood-darker);font:inherit;border:0;border-radius:999px;align-items:center;gap:8px;margin:22px auto 4px;padding:0 16px;font-weight:700;display:flex}.picker-settings-link:focus-visible{outline:3px solid var(--lapis);outline-offset:2px}.btn-play{place-items:center;padding:8px 64px;display:grid;position:relative}.btn-play>.icon{position:absolute;top:50%;left:20px;transform:translateY(-50%)}.btn-play-text{text-align:center;justify-items:center;gap:4px;line-height:1.1;display:grid}.btn-play-level{color:#e9c97a;font-size:.95rem;font-weight:700}.btn-icon,.daily-title{align-items:center;gap:8px;display:inline-flex}.names-row.is-disabled{opacity:.55}.names-row.is-disabled .lang-option{cursor:not-allowed}.settings-locked{color:var(--ink-soft);margin:-4px 4px 10px;font-size:.9rem;font-weight:700}
