:root{--max-width:500px;--background:#ffffff;--foreground:#1a1a1b;--card-bg:#ffffff;--border:#d3d6da;--border-dark:#878a8c;--muted:#787c7e;--correct:#6aaa64;--correct-bg:rgba(106,170,100,0.15);--close:#c9b458;--close-bg:rgba(201,180,88,0.15);--warm:#e07c3e;--warm-bg:rgba(224,124,62,0.15);--cold:#787c7e;--cold-bg:rgba(120,124,126,0.15);--primary:#6aaa64;--primary-hover:#5a9a54;--success:#6aaa64;--warning:#c9b458;--error:#dc2626;--header-bg:#ffffff;--header-border:#d3d6da}@media (prefers-color-scheme:dark){:root{--background:#121213;--foreground:#ffffff;--card-bg:#1a1a1b;--border:#3a3a3c;--border-dark:#565758;--muted:#818384;--correct:#538d4e;--correct-bg:rgba(83,141,78,0.2);--close:#b59f3b;--close-bg:rgba(181,159,59,0.2);--warm:#c76a2f;--warm-bg:rgba(199,106,47,0.2);--cold:#3a3a3c;--cold-bg:rgba(58,58,60,0.5);--header-bg:#121213;--header-border:#3a3a3c}}*{box-sizing:border-box;padding:0;margin:0}body,html{max-width:100vw;overflow-x:hidden;font-family:Clear Sans,Helvetica Neue,Arial,sans-serif}body{background:var(--background);color:var(--foreground);line-height:1.4}a{color:var(--primary);text-decoration:none}button{cursor:pointer}button,input{font-family:inherit}@keyframes flip{0%{transform:rotateX(0)}50%{transform:rotateX(-90deg)}to{transform:rotateX(0)}}@keyframes shake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-4px)}20%,40%,60%,80%{transform:translateX(4px)}}@keyframes bounce{0%,20%{transform:translateY(0)}40%{transform:translateY(-20px)}50%{transform:translateY(5px)}60%{transform:translateY(-10px)}80%{transform:translateY(2px)}to{transform:translateY(0)}}@keyframes pop{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.animate-flip{animation:flip .5s ease-in-out}.animate-shake{animation:shake .5s ease-in-out}.animate-bounce{animation:bounce .5s ease-in-out}.animate-pop{animation:pop .15s ease-in-out}.animate-fade-in{animation:fadeIn .3s ease-out}