:root{--paper:#fdfbf3;--line:#508cd22e;--margin:#d6453d59;--ink:#2b2b3a;--ink-soft:#6b6b7d;--red:#d6453d;--blue:#2f6fb3;--green:#2e9e5b;--hand:"Patrick Hand", "Comic Sans MS", cursive;--title:"Gochi Hand", "Patrick Hand", cursive}*{box-sizing:border-box}[hidden]{display:none!important}html,body{height:100%;margin:0}body{font-family:var(--hand);color:var(--ink);background-color:var(--paper);background-image:linear-gradient(90deg, transparent 46px, var(--margin) 46px, var(--margin) 48px, transparent 48px), repeating-linear-gradient(180deg, transparent 0 31px, var(--line) 31px 32px);-webkit-tap-highlight-color:transparent;overflow:hidden}.page{grid-template-rows:auto 1fr;gap:8px;max-width:1100px;height:100dvh;margin:0 auto;padding:12px 16px 16px 56px;display:grid}.top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.title{font-family:var(--title);margin:0;font-size:clamp(1.6rem,4.2vw,2.7rem);font-weight:400;line-height:1;transform:rotate(-1.5deg)}.title span{color:var(--red)}.toolbar{align-items:center;gap:12px;display:flex}.threshold{align-items:center;gap:6px;font-size:1.2rem;transition:opacity .2s;display:flex}.threshold.locked{opacity:.45}.threshold output{font-family:var(--title);text-align:center;min-width:1.6em;color:var(--red);font-size:1.7rem}.screen{min-height:0}.sketch-bg{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:visible}.btn,.key,.card,.slot,.field{isolation:isolate;position:relative}.btn{font-family:var(--hand);color:var(--ink);cursor:pointer;background:0 0;border:none;padding:8px 18px;font-size:1.25rem;transition:transform .1s}.btn:hover:not(:disabled){transform:rotate(-2deg)scale(1.04)}.btn:active:not(:disabled){transform:scale(.96)}.btn:disabled{cursor:default;opacity:.4}.btn.tiny{min-width:40px;min-height:40px;padding:4px 10px;font-size:1.4rem;line-height:1}.btn.icon{font-size:1.3rem}.btn.big{font-family:var(--title);padding:10px 28px;font-size:1.7rem}.btn.small{padding:4px 8px;font-size:1.1rem}.btn.ghost{color:var(--ink-soft)}:focus-visible{outline:3px dashed var(--blue);outline-offset:4px}.card{text-align:center;padding:28px 32px}.card h2{font-family:var(--title);margin:0 0 4px;font-size:2.4rem;font-weight:400}.card p{margin:0 0 12px;font-size:1.35rem}.setup{place-items:center;display:grid}.setup-card{width:min(480px,100%);transform:rotate(.8deg)}.field{width:min(340px,100%);margin:18px auto 4px}.field input{width:100%;font-family:var(--title);text-align:center;text-transform:uppercase;letter-spacing:.12em;color:var(--blue);background:0 0;border:none;padding:4px 8px 8px;font-size:2.2rem}.field input::placeholder{text-transform:none;letter-spacing:normal;color:#b8b8c6;font-family:var(--hand);font-size:1.6rem}.field input:focus{outline:none}.field:focus-within{background:#2f6fb30f}.error{min-height:1.6em;color:var(--red);font-size:1.15rem!important}.play{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:center;gap:16px;display:grid}.bomb-area{flex-direction:column;align-items:center;min-height:0;display:flex}.bomb{aspect-ratio:1;width:min(440px,100%,62dvh)}.bomb-svg{transform-origin:47% 62%;width:100%;height:100%;animation:wobble var(--speed,.9s) ease-in-out infinite alternate;overflow:visible}.bomb.defused .bomb-svg{transition:transform .4s;animation:none;transform:rotate(0)}.bomb.gone .bomb-svg{visibility:hidden}@keyframes wobble{0%{transform:rotate(calc(var(--amp,0deg) * -1)) scale(1)}to{transform:rotate(var(--amp,0deg)) scale(1.015)}}.bomb-letter{font-family:var(--title);fill:#ffe9a8;stroke:var(--ink);stroke-width:4px;paint-order:stroke;text-anchor:middle;dominant-baseline:central}.bomb-letter.new{transform-box:fill-box;transform-origin:50%;animation:.45s cubic-bezier(.3,1.6,.5,1) scribble-in}@keyframes scribble-in{0%{opacity:0;transform:scale(2.6)}}.spark{animation:.14s steps(2,end) infinite alternate flicker}@keyframes flicker{0%{transform:scale(.75)rotate(0)}to{transform:scale(1.2)rotate(22deg)}}.status{text-align:center;min-height:1.6em;margin:0;font-size:1.5rem}.status.danger{color:var(--red);font-family:var(--title);animation:.6s ease-in-out infinite alternate pulse}@keyframes pulse{to{transform:scale(1.12)}}.guess-area{flex-direction:column;align-items:center;gap:clamp(14px,3dvh,32px);display:flex}.word{--n:6;--slot:min(3.4rem, calc((100% - (var(--n) - 1) * 6px) / var(--n)));justify-content:center;gap:6px;width:100%;display:flex}.slot{width:var(--slot);place-items:end center;min-width:1.4rem;max-width:3.4rem;height:3.8rem;padding-bottom:6px;display:grid}.slot .ch{font-family:var(--title);font-size:clamp(1.5rem,5vw,2.8rem);line-height:1}.slot.pop .ch{animation:.35s cubic-bezier(.3,1.8,.5,1) pop}.slot.missed .ch{color:var(--red)}@keyframes pop{0%{transform:scale(.2)rotate(-20deg)}}.keyboard{flex-direction:column;align-items:center;gap:6px;display:flex}.key-row{gap:6px;display:flex}.key{--size:clamp(40px, min(11vw, 8dvh), 58px);width:var(--size);height:var(--size);font-family:var(--title);font-size:calc(var(--size) * .55);color:var(--ink);cursor:pointer;background:0 0;border:none;padding:0;transition:transform .1s}.key:nth-child(odd){transform:rotate(-1.5deg)}.key:nth-child(2n){transform:rotate(1.2deg)}.key:hover:not(:disabled){transform:translateY(-3px)rotate(-3deg)}.key:active:not(:disabled){transform:scale(.9)}.key:disabled{cursor:default}.key.hit span{color:var(--green)}.key.miss span{color:#aaa}.overlay{z-index:20;background:#fdfbf340;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.end-card{width:min(440px,100%);animation:.45s cubic-bezier(.3,1.5,.5,1) card-in;transform:rotate(-1.2deg)}.overlay.lost h2{color:var(--red)}.answer{font-family:var(--title);letter-spacing:.1em;color:var(--blue);word-break:break-all;margin:0 0 16px;font-size:clamp(2rem,8vw,3rem)}@keyframes card-in{0%{opacity:0;transform:scale(.4)rotate(-12deg)}}#fx{z-index:10;pointer-events:none;position:fixed;inset:0;overflow:hidden}.flying-letter{font-family:var(--title);will-change:transform;text-shadow:2px 2px #fffc;font-size:2.2rem;line-height:1}.flying-letter.big{font-size:4.4rem}.boom-text{font-family:var(--title);fill:var(--red);stroke:#fff;stroke-width:5px;paint-order:stroke;text-anchor:middle;dominant-baseline:central}body.quake .page{animation:.5s quake}@keyframes quake{20%{transform:translate(-10px,6px)rotate(-1deg)}40%{transform:translate(8px,-6px)rotate(1deg)}60%{transform:translate(-6px,4px)}80%{transform:translate(4px,-2px)}}@media (width<=760px){.page{padding-left:16px}body{background-image:repeating-linear-gradient(180deg, transparent 0 31px, var(--line) 31px 32px)}.play{grid-template-rows:auto auto;grid-template-columns:1fr;align-content:start;gap:8px}.bomb{width:min(300px,70vw,34dvh)}}@media (prefers-reduced-motion:reduce){.bomb-svg,.spark,.status.danger{animation:none!important}}.setup-card{width:min(560px,100%)}.keyboard.compact{margin:14px 0 2px}.keyboard.compact .key{--size:clamp(36px, min(10vw, 6.6dvh), 52px)}.key.wide{width:calc(var(--size) * 1.6)}@media (width<=760px){.setup-card{padding:20px 10px}.setup-card .key-row,.setup-card .keyboard{gap:5px}}
