:root{--bg:#f6f3ee;--surface:#fff;--sunk:#efebe4;--ink:#1d1d1f;--muted:#66656b;--faint:#9b9aa0;--line:#e2dcd2;--accent:#2f5d50;--accent-ink:#fff;--accent-soft:#e2ede8;--ok:#24724a;--ok-soft:#e1f1e7;--bad:#b3261e;--bad-soft:#fbe8e5;--warn:#8a5a00;--warn-soft:#fbf0d4;--squiggle:#d4372c;--shadow:0 1px 2px #281e140f, 0 4px 16px #281e140f;--sans:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--serif:"Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;--radius:14px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#151518;--surface:#1f1f24;--sunk:#19191d;--ink:#ececf0;--muted:#a3a2ab;--faint:#75747c;--line:#2f2f36;--accent:#84c7b1;--accent-ink:#0d1d18;--accent-soft:#1d3530;--ok:#74d19d;--ok-soft:#173326;--bad:#ff8f84;--bad-soft:#3a1d1b;--warn:#f0c457;--warn-soft:#362b12;--squiggle:#ff7a6e;--shadow:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--ink);font:16px/1.5 var(--sans);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}#root{justify-content:center;min-height:100%;display:flex}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.screen{flex-direction:column;width:100%;max-width:560px;min-height:100dvh;display:flex}.top{min-height:56px;padding:max(8px, env(safe-area-inset-top)) 16px 0;align-items:center;gap:8px;display:flex}.top .title{color:var(--muted);flex:1;font-size:14px}.icon-btn{width:40px;height:40px;color:var(--muted);background:0 0;border:0;border-radius:10px;place-items:center;margin-left:-8px;display:grid}.icon-btn:active{background:var(--sunk)}.text-btn{color:var(--muted);background:0 0;border:0;padding:8px;font-size:14px}.body{flex-direction:column;flex:1;gap:18px;padding:8px 20px 24px;display:flex}.foot{padding:12px 20px max(20px, env(safe-area-inset-bottom));background:linear-gradient(to bottom, transparent, var(--bg) 22%);flex-direction:column;gap:10px;display:flex;position:sticky;bottom:0}.kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--faint);font-size:12px}h1{letter-spacing:-.01em;margin:0;font-size:24px;font-weight:600;line-height:1.25}h2{letter-spacing:.08em;text-transform:uppercase;color:var(--faint);margin:0;font-size:13px;font-weight:600}.muted{color:var(--muted)}.small{font-size:14px}.de{font-family:var(--serif);font-size:20px;line-height:1.5}.cue{flex-direction:column;gap:4px;display:flex}.cue.english{color:var(--muted);font-style:italic}.cue.wrong .de{color:var(--bad);text-decoration:line-through;-webkit-text-decoration-color:color-mix(in srgb, var(--bad) 55%, transparent);text-decoration-color:color-mix(in srgb, var(--bad) 55%, transparent)}.primary{border-radius:var(--radius);background:var(--accent);height:54px;color:var(--accent-ink);border:0;font-size:17px;font-weight:600}.primary:disabled{opacity:.35}.primary.busy{animation:1.2s ease-in-out infinite pulse}.quiet{border:1px solid var(--line);border-radius:var(--radius);height:48px;color:var(--ink);background:0 0;font-size:15px}@keyframes pulse{50%{opacity:.6}}.field{border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface);resize:none;width:100%;font-family:var(--serif);padding:12px 14px;font-size:20px;line-height:1.45}.field:focus{border-color:var(--accent);outline:none}.field::placeholder{color:var(--faint);font-family:var(--sans);font-size:17px}.field.ok{border-color:var(--ok);background:var(--ok-soft)}input.field{font-family:var(--sans);height:52px;font-size:17px}.card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:100%;box-shadow:var(--shadow);text-align:left;flex-direction:column;gap:4px;padding:16px;display:flex}button.card:active{transform:scale(.99)}button.card:disabled{opacity:.55}.card .name{font-size:17px;font-weight:600}.card .sub{color:var(--muted);font-size:14px}.row{align-items:center;gap:12px;display:flex}.grow{flex:1;min-width:0}.chev{color:var(--faint);flex:none}.count{background:var(--bad-soft);min-width:26px;height:26px;color:var(--bad);border-radius:13px;place-items:center;padding:0 8px;font-size:14px;font-weight:600;display:grid}.themes{gap:0;padding:4px 0}.themes button{border:0;border-top:1px solid var(--line);text-align:left;background:0 0;align-items:center;gap:12px;width:100%;min-height:52px;padding:8px 16px;display:flex}.themes button:first-child{border-top:0}.themes button:active{background:var(--sunk)}.dots{flex:none;gap:5px;display:flex}.dot{background:var(--line);border-radius:50%;width:9px;height:9px}.dot.ok{background:var(--ok)}.dot.bad{background:var(--bad);opacity:.75}.squiggle{-webkit-text-decoration:underline wavy var(--squiggle);text-decoration:underline wavy var(--squiggle);text-underline-offset:5px;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;text-decoration-thickness:1.5px}.tag{background:var(--bad-soft);color:var(--bad);font:600 12px/1.6 var(--sans);vertical-align:3px;white-space:nowrap;border-radius:6px;margin-left:6px;padding:1px 7px;display:inline-block}.tag.neutral{background:var(--sunk);color:var(--muted);margin-left:0}.tags{flex-wrap:wrap;gap:6px;display:flex}.fixed{color:var(--ok)}.marked{overflow-wrap:anywhere}.marked .tap{cursor:pointer}.hint{background:var(--warn-soft);box-shadow:0 0 0 2px var(--warn-soft);border-radius:4px}.band{border-radius:var(--radius);flex-direction:column;gap:10px;padding:16px;display:flex}.band.ok{background:var(--ok-soft)}.band.bad{background:var(--bad-soft)}.band.warn{background:var(--warn-soft)}.band .head{font-size:17px;font-weight:600}.band.ok .head{color:var(--ok)}.band.bad .head{color:var(--bad)}.band.warn .head{color:var(--warn)}.note{color:var(--warn);font-size:15px}.how{color:var(--muted);font-size:14px}.how summary{cursor:pointer;color:var(--faint);list-style:none}.how summary::-webkit-details-marker{display:none}.how summary:before{content:"+ "}.how[open] summary:before{content:"− "}.how p{margin:6px 0 0}.progress{background:var(--line);border-radius:2px;flex:1;height:4px;overflow:hidden}.progress>div{background:var(--accent);height:100%;transition:width .3s}.idea{border-top:1px solid var(--line);flex-direction:column;gap:2px;padding:6px 0;display:flex}.idea:first-child{border-top:0;padding-top:0}.idea .flags{color:var(--faint);flex-wrap:wrap;gap:4px 14px;font-size:13px;display:flex}.idea .flags .on{color:var(--ok);font-weight:600}.chips{scrollbar-width:none;gap:8px;margin:0 -20px;padding:0 20px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chip{background:var(--surface);border:1px solid var(--line);white-space:nowrap;color:var(--muted);border-radius:8px;flex:none;padding:6px 10px;font-size:13px}.chip.on{color:var(--ink)}.chip.warn{color:var(--warn)}button.chip{border-color:color-mix(in srgb, var(--accent) 45%, var(--line));color:var(--accent);background:0 0}.essay-field{flex:1;min-height:240px;font-size:19px}.sheet-back{z-index:10;background:#00000073;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{width:100%;max-width:560px;padding:16px 20px max(24px, env(safe-area-inset-bottom));background:var(--surface);border-radius:22px 22px 0 0;flex-direction:column;gap:14px;display:flex}.field.bad{border-color:var(--bad);animation:.3s shake}@keyframes shake{25%{transform:translate(-4px)}75%{transform:translate(4px)}}.login{justify-content:center;gap:14px;padding:24px 20px}.logo{border-radius:14px;width:56px;height:56px}.error{color:var(--bad);font-size:14px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
