@coach_ben · 5/21/2026, 7:05:42 PM
Initial version — all lines are new.
+<style>+ html,body{height:100%;margin:0}+ body{display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,#e7f0ee,#f7f4ee);font-family:system-ui,-apple-system,Segoe UI,sans-serif}+ #w{width:100%;max-width:340px;padding:1.25rem;text-align:center}+ h2{margin:.2rem 0 .8rem;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:#5E7C68}+ #q{font-size:1.3rem;margin-bottom:1rem}+ #q b{color:#8FB39C}+ .opt{display:block;width:100%;box-sizing:border-box;margin:.45rem 0;padding:.85rem;border:2px solid #e5e7eb;border-radius:.9rem;background:#fff;font-size:1.05rem;font-weight:600;cursor:pointer}+ .ok{background:#dcfce7;border-color:#16a34a}.no{background:#fee2e2;border-color:#dc2626}+ #bar{height:6px;background:#e5e7eb;border-radius:9999px;overflow:hidden;margin-bottom:1rem}+ #fill{height:100%;width:0;background:#8FB39C;transition:.3s}+ #score{margin-top:.8rem;color:#6b7280}+</style>+<div id="w">+ <h2>Past Tense · Irregular Verbs</h2>+ <div id="bar"><div id="fill"></div></div>+ <div id="q"></div>+ <div id="opts"></div>+ <div id="score"></div>+</div>+<script>+ var qs=[{v:"go",a:"went",d:["goed","gone","goned"]},{v:"eat",a:"ate",d:["eated","eaten","eat"]},{v:"buy",a:"bought",d:["buyed","boughted","bringed"]},{v:"see",a:"saw",d:["seed","seen","sawed"]},{v:"take",a:"took",d:["taked","taken","tooken"]},{v:"think",a:"thought",d:["thinked","thunk","thinked"]},{v:"drink",a:"drank",d:["drinked","drunk","drinken"]},{v:"write",a:"wrote",d:["writed","written","wroted"]}];+ var i=0,score=0,locked=false;+ var q=document.getElementById("q"),opts=document.getElementById("opts"),scoreEl=document.getElementById("score"),fill=document.getElementById("fill");+ function shuffle(a){for(var k=a.length-1;k>0;k--){var j=Math.floor(Math.random()*(k+1));var t=a[k];a[k]=a[j];a[j]=t;}return a;}+ function render(){+ if(i>=qs.length){q.innerHTML="🏁 Done!";opts.innerHTML="";scoreEl.innerHTML="<b>"+score+" / "+qs.length+"</b> correct";fill.style.width="100%";return;}+ locked=false;var item=qs[i];fill.style.width=(i/qs.length*100)+"%";+ q.innerHTML="Past tense of <b>"+item.v+"</b>?";+ var choices=shuffle([item.a,item.d[0],item.d[1]]);opts.innerHTML="";+ choices.forEach(function(c){var b=document.createElement("button");b.className="opt";b.textContent=c;b.onclick=function(){+ if(locked)return;locked=true;+ if(c===item.a){b.className="opt ok";score++;}else{b.className="opt no";[].forEach.call(opts.children,function(x){if(x.textContent===item.a)x.className="opt ok";});}+ setTimeout(function(){i++;render();},850);+ };opts.appendChild(b);});+ scoreEl.textContent="Score: "+score;+ }+ render();+</script>