:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#000;--paper:#fff;--error:#e00000}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--paper);min-height:100dvh;color:var(--ink);-webkit-font-smoothing:antialiased;flex-direction:column;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.5;display:flex}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}h1{font-size:1.25rem;font-weight:500}button,input{font:inherit;color:inherit;background:0 0;border:0;border-radius:0}button{cursor:pointer}:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.bar{justify-content:space-between;padding:20px 24px;display:flex}.center{flex:1;justify-content:center;align-items:center;padding:24px;display:flex}.stack{flex-direction:column;gap:20px;width:100%;max-width:320px;display:flex}.quiet:hover{text-decoration:underline}.primary{border:1px solid var(--ink);padding:10px}.primary:hover:not(:disabled){background:var(--ink);color:var(--paper)}.primary:disabled{opacity:.5}.error{color:var(--error)}label{flex-direction:column;gap:4px;display:flex}label input{border-bottom:1px solid var(--ink);outline:none;padding:6px 0}label input:focus-visible{box-shadow:0 1px 0 var(--ink);outline:none}.links{justify-content:space-between;display:flex}.fields{flex-direction:column;gap:8px;list-style:none;display:flex}.fields a{text-decoration:underline}.soon{opacity:.5}.exercise{width:100%;max-width:760px;position:relative}.progress{opacity:.5;font-variant-numeric:tabular-nums;margin-bottom:16px}.sentence{white-space:pre-wrap;cursor:text;font-size:clamp(1.5rem,4vw,2.25rem);line-height:1.5}.char{opacity:.5;transition:opacity .1s linear}.char.correct{opacity:1}.char.next{box-shadow:0 2px 0 var(--ink)}.char.wrong{opacity:1;color:var(--error);box-shadow:0 2px 0 var(--error)}.hint{min-height:24px;margin-top:16px}.capture{opacity:0;caret-color:#0000;outline:none;width:1px;height:1px;position:absolute;top:0;left:0}
