:root{--ink:#34454a;--ivory:#fff9ef;--paper:#fff;--muted:#8a979b;--line:#e6dccb;--correct:#4fa66a;--prompt:#4c9f9b;--gold:#e8b94f;--pad:max(16px, 2.4vmin);--gap:clamp(20px, 3.4vmin, 40px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{overscroll-behavior:none;height:100%;margin:0;overflow:hidden}body{background:var(--ivory);color:var(--ink);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-text-size-adjust:100%;font-family:Nunito,ui-rounded,Avenir Next,system-ui,sans-serif}button{font:inherit;color:inherit;-webkit-touch-callout:none}img{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.wm-screen{padding:max(var(--pad), env(safe-area-inset-top)) max(var(--pad), env(safe-area-inset-right)) max(var(--pad), env(safe-area-inset-bottom)) max(var(--pad), env(safe-area-inset-left));background:radial-gradient(ellipse at 50% 18%, var(--glow) 0 30%, transparent 70%), var(--ivory);touch-action:none;grid-template-rows:auto minmax(0,1fr) auto auto auto minmax(0,1fr);justify-items:center;display:grid;position:fixed;inset:0}.wm-adult{width:100%;color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;font-size:15px;font-weight:700;display:flex}.wm-adult-right{align-items:center;gap:12px;display:flex}.wm-count{font-variant-numeric:tabular-nums;gap:14px;margin:0;display:flex}.wm-count strong{font-weight:800}.wm-adult-button{border:1.5px solid var(--line);background:var(--control-fill);min-width:64px;min-height:44px;color:var(--muted);cursor:pointer;touch-action:manipulation;border-radius:12px;padding:8px 14px;font-size:14px;font-weight:700;position:relative;overflow:hidden}.wm-adult-button:disabled{opacity:.45}.wm-reset-fill{z-index:-1;background:var(--hold-fill);transform-origin:0;position:absolute;inset:0;transform:scaleX(0)}.wm-reset{isolation:isolate}.wm-reset[data-holding=true] .wm-reset-fill{transition:transform 1s linear;transform:scaleX(1)}.wm-word-card{border:4px solid var(--panel-line);background:var(--paper);width:min(100%,560px);min-height:clamp(130px,24dvh,260px);box-shadow:0 8px 0 var(--panel-ledge);border-radius:clamp(28px,4vmin,44px);grid-row:3;place-items:center;margin:12px 0 clamp(16px,3.4vmin,36px);padding:0 clamp(24px,5vmin,56px);display:grid}.wm-word{letter-spacing:.04em;color:var(--ink);margin:0;font-size:clamp(76px,min(15vw,17dvh),170px);font-weight:800;line-height:1;animation:.26s ease-out wm-word-in}.wm-choices{--card:min(calc((100vw - 2 * var(--pad) - 2 * var(--gap)) / 3), calc(100dvh - 24dvh - 220px), 340px);grid-row:4;grid-template-columns:repeat(3, var(--card));gap:var(--gap);justify-content:center;display:grid}.wm-choice{width:var(--card);aspect-ratio:1;min-width:150px;padding:calc(var(--card) * .07);border:5px solid var(--card-line);background:var(--ivory);box-shadow:0 9px 0 var(--card-ledge), 0 14px 26px var(--drop);cursor:pointer;touch-action:none;border-radius:14%;outline:none;grid-template:minmax(0,1fr)/minmax(0,1fr);place-items:stretch stretch;margin:0;transition:transform .11s cubic-bezier(.2,.8,.2,1),box-shadow .11s,opacity .2s,border-color .15s;display:grid;position:relative}.wm-choice img{object-fit:contain;pointer-events:none;width:100%;height:100%;min-height:0;display:block}.wm-choice[data-pressed=true]{box-shadow:0 3px 0 var(--card-ledge), 0 6px 12px var(--drop);transform:translateY(6px)scale(.96)}.wm-choice:focus-visible{outline:6px solid var(--gold);outline-offset:6px}.wm-choice[data-state=correct]{border-color:var(--correct);box-shadow:0 0 0 8px #4fa66a47, 0 9px 0 var(--correct-ledge);animation:.52s cubic-bezier(.3,1.6,.5,1) wm-bounce}.wm-choice[data-state=wrong]{opacity:.4;animation:.42s ease-in-out wm-shake}.wm-screen[data-phase=prompt] .wm-choice[data-state=wrong],.wm-screen[data-phase=prompt] .wm-choice[data-state=idle]{opacity:.4}.wm-choice[data-state=prompt]{border-color:var(--prompt);animation:1.1s ease-in-out infinite wm-pulse}.wm-burst{pointer-events:none;width:36%;animation:.6s cubic-bezier(.3,1.6,.5,1) both wm-pop;position:absolute;top:-12%;right:-10%}.wm-star{width:100%;height:auto;display:block}.wm-star path{fill:var(--gold);stroke:var(--ink);stroke-width:6px;stroke-linejoin:round}.wm-progress{grid-row:5;gap:10px;margin:calc(9px + clamp(14px,2.4vmin,24px)) 0 0;display:flex}.wm-progress span{background:var(--track);border-radius:50%;width:14px;height:14px;transition:background .2s}.wm-progress span[data-filled=true]{background:var(--gold)}.wm-done{text-align:center;flex-direction:column;grid-row:2/-1;justify-content:center;align-items:center;display:flex}.wm-stars{gap:clamp(8px,2vmin,20px);margin-bottom:clamp(8px,2vmin,20px);display:flex}.wm-stars .wm-star{width:clamp(80px,14vmin,150px);animation:.6s cubic-bezier(.3,1.6,.5,1) both wm-pop}.wm-stars .wm-star:nth-child(2){width:clamp(100px,18vmin,190px);animation-delay:.12s}.wm-stars .wm-star:nth-child(3){animation-delay:.24s}.wm-done h1{margin:0;font-size:clamp(56px,10vmin,110px);font-weight:800;line-height:1.05}.wm-round-score{color:var(--muted);margin:10px 0 clamp(20px,4vmin,40px);font-size:18px;font-weight:700}.wm-play-again{background:var(--prompt);min-width:260px;min-height:88px;box-shadow:0 8px 0 var(--prompt-deep);color:#fff;cursor:pointer;touch-action:manipulation;border:0;border-radius:999px;padding:0 44px;font-size:clamp(28px,4.4vmin,40px);font-weight:800}.wm-play-again:active{box-shadow:0 2px 0 var(--prompt-deep);transform:translateY(6px)}.wm-done-links{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:clamp(18px,3vmin,28px);display:flex}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (orientation:portrait){.wm-screen{--gap:20px}.wm-word-card{min-height:clamp(160px,20dvh,260px);margin-bottom:clamp(28px,5dvh,56px)}.wm-choices{--card:min(calc((100vw - 2 * var(--pad) - 2 * var(--gap)) / 3), 300px)}}@media (width<=540px) and (orientation:portrait){.wm-screen{grid-template-rows:auto 0 auto minmax(0,1fr) auto 0}.wm-word-card{min-height:110px}.wm-word{font-size:72px}.wm-choices{--gap:14px;--card:min(calc((100vw - 2 * var(--pad) - var(--gap)) / 2), calc((100dvh - 290px) / 2 - var(--gap)));max-width:calc(2 * var(--card) + var(--gap));place-content:center;gap:var(--gap);flex-wrap:wrap;display:flex}.wm-choice{min-width:0}}@keyframes wm-word-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes wm-bounce{0%{transform:scale(1)}40%{transform:scale(1.07)}to{transform:scale(1)}}@keyframes wm-shake{0%,to{transform:translate(0)}20%{transform:translate(-10px)}40%{transform:translate(9px)}60%{transform:translate(-6px)}80%{transform:translate(4px)}}@keyframes wm-pulse{0%,to{box-shadow:0 0 0 0 #4c9f9b59, 0 9px 0 var(--prompt-ledge);transform:scale(1)}50%{box-shadow:0 0 0 14px #4c9f9b33, 0 9px 0 var(--prompt-ledge);transform:scale(1.04)}}@keyframes wm-pop{0%{opacity:0;transform:scale(.3)rotate(-20deg)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.wm-word,.wm-choice,.wm-choice[data-state],.wm-burst,.wm-stars .wm-star{transition:none;animation:none!important}.wm-choice[data-state=prompt]{box-shadow:0 0 0 10px #4c9f9b47, 0 9px 0 var(--prompt-ledge)}}.wm-adult-left{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.wm-level{white-space:nowrap}.wm-level strong{color:var(--ink);font-weight:800}.wm-screen[data-pictures="5"] .wm-choices{--gap:clamp(14px, 2vmin, 24px);--card:min(calc((100vw - 2 * var(--pad) - 4 * var(--gap)) / 5), calc(100dvh - 24dvh - 220px), 260px);grid-template-columns:repeat(5, var(--card))}.wm-screen[data-pictures="5"] .wm-choice{border-width:4px;min-width:0}@media (orientation:portrait){.wm-screen[data-pictures="5"] .wm-choices{--gap:20px;--card:min(calc((100vw - 2 * var(--pad) - 2 * var(--gap)) / 3), calc((100dvh - 20dvh - 280px) / 2), 260px);max-width:calc(3 * var(--card) + 2 * var(--gap));flex-wrap:wrap;justify-content:center;display:flex}}@media (width<=540px) and (orientation:portrait){.wm-screen[data-pictures="5"] .wm-choices{--card:min(calc((100vw - 2 * var(--pad) - var(--gap)) / 2), calc((100dvh - 300px) / 3 - 14px));max-width:calc(2 * var(--card) + var(--gap));gap:14px}}.wm-log-backdrop{z-index:10;background:var(--backdrop);touch-action:none;justify-content:flex-end;display:flex;position:fixed;inset:0}.wm-log{width:min(460px,100vw);height:100%;padding:max(20px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) max(20px, env(safe-area-inset-bottom)) 20px;background:var(--paper);flex-direction:column;animation:.18s ease-out wm-slide-in;display:flex;box-shadow:-10px 0 30px #34454a29}.wm-log-header{border-bottom:1.5px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:14px;display:flex}.wm-log-header h2{margin:0;font-size:26px;font-weight:800}.wm-log-header p{color:var(--muted);margin:4px 0 0;font-size:15px;font-weight:700}.wm-log-empty{color:var(--muted);text-align:center;margin:28px 0;font-size:17px;font-weight:700}.wm-log-list{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;flex:1;margin:0;padding:0;list-style:none;overflow-y:auto}.wm-log-row{border-bottom:1px solid var(--row-line);grid-template-columns:28px 48px 1fr auto;grid-template-areas:"number picture word result""number picture meta meta";align-items:center;column-gap:12px;padding:12px 4px;display:grid}.wm-log-number{color:var(--muted);text-align:right;grid-area:number;font-size:14px;font-weight:700}.wm-log-row img{background:var(--ivory);border-radius:10px;grid-area:picture;width:48px;height:48px}.wm-log-word{grid-area:word;font-size:22px;font-weight:800}.wm-log-result{flex-direction:column;grid-area:result;align-items:flex-end;font-size:16px;font-weight:800;display:flex}.wm-log-result small{color:var(--muted);font-size:13px;font-weight:700}.wm-log-row[data-result=correct] .wm-log-result{color:var(--text-correct)}.wm-log-row[data-result=incorrect] .wm-log-result{color:var(--text-incorrect)}.wm-log-row[data-result=skipped] .wm-log-result{color:var(--muted)}.wm-log-meta{color:var(--muted);grid-area:meta;font-size:13px;font-weight:600}@keyframes wm-slide-in{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.wm-log{animation:none}}.wm-letter{font-size:calc(var(--card) * .5);color:var(--ink);place-items:center;font-weight:800;line-height:1;display:grid}.wm-choice:disabled{opacity:.55;cursor:default}.wm-listen{justify-content:center;align-items:center;gap:clamp(16px,3vmin,32px);padding:12px 0;display:flex}.wm-prompt-art{object-fit:contain;width:clamp(96px,16dvh,180px);height:clamp(96px,16dvh,180px);animation:.26s ease-out wm-word-in}.wm-say{background:var(--prompt);box-shadow:0 7px 0 var(--prompt-deep);color:#fff;cursor:pointer;touch-action:manipulation;border:0;border-radius:999px;justify-content:center;align-items:center;gap:14px;width:clamp(72px,11vmin,104px);height:clamp(72px,11vmin,104px);display:inline-flex}.wm-say:active{box-shadow:0 2px 0 var(--prompt-deep);transform:translateY(5px)}.wm-say:focus-visible{outline:6px solid var(--gold);outline-offset:6px}.wm-speaker{fill:#fff;stroke:#fff;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round;width:52%;max-width:52px;height:auto}.wm-log-letter{background:var(--ivory);border-radius:10px;grid-area:picture;place-items:center;width:48px;height:48px;font-size:28px;font-weight:800;display:grid}@media (prefers-reduced-motion:reduce){.wm-prompt-art{animation:none}}
