@import"https://fonts.googleapis.com/css2?family=Atkinson+Hyperlegible:ital,wght@0,400;0,700;1,400;1,700&family=Gentium+Book+Plus:ital,wght@0,400;0,700;1,400;1,700&family=Barlow+Condensed:wght@500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Instrument+Sans:ital,wght@0,400..700;1,400..700&display=swap";:root{--font-ui: "Atkinson Hyperlegible", "Segoe UI", system-ui, -apple-system, sans-serif;--font-de: "Gentium Book Plus", "Charis SIL", Georgia, serif;--font-num: "Barlow Condensed", "DIN Condensed", "Arial Narrow", sans-serif;--fs-2xs: .6875rem;--lh-2xs: 1rem;--fs-xs: .75rem;--lh-xs: 1rem;--fs-sm: .8125rem;--lh-sm: 1.125rem;--fs-base: .875rem;--lh-base: 1.3125rem;--fs-md: .9375rem;--lh-md: 1.375rem;--fs-lg: 1.0625rem;--lh-lg: 1.5rem;--fs-xl: 1.25rem;--lh-xl: 1.625rem;--fs-2xl: 1.5rem;--lh-2xl: 1.75rem;--fs-3xl: 1.875rem;--lh-3xl: 2.125rem;--fs-4xl: 2.375rem;--lh-4xl: 2.5rem;--tracking-tight: -.015em;--tracking-num: .01em;--tracking-caps: .06em;--weight-regular: 400;--weight-bold: 700;--sp-0: 0;--sp-1: .25rem;--sp-2: .5rem;--sp-3: .75rem;--sp-4: 1rem;--sp-5: 1.25rem;--sp-6: 1.5rem;--sp-7: 1.75rem;--sp-8: 2rem;--sp-10: 2.5rem;--sp-12: 3rem;--sp-16: 4rem;--sp-20: 5rem;--square: 20px;--margin-x: 1.5rem;--r-none: 0;--r-xs: 2px;--r-sm: 4px;--r-md: 6px;--r-lg: 10px;--r-full: 999px;--dur-1: 80ms;--dur-2: .14s;--dur-3: .22s;--dur-4: .36s;--ease-out: cubic-bezier(.2, 0, 0, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-spring: cubic-bezier(.34, 1.4, .64, 1);--blue-50: #eef2fc;--blue-100: #d9e1f8;--blue-200: #b7c6f0;--blue-300: #8da4e6;--blue-400: #5f7dda;--blue-500: #3b5bc7;--blue-600: #2540a8;--blue-700: #1c338a;--blue-800: #16296e;--blue-900: #101e52;--red-50: #fdeeef;--red-100: #fad6d8;--red-300: #f19aa0;--red-500: #d6303a;--red-700: #a81f27;--red-900: #6e1216;--green-50: #eaf5ee;--green-100: #d2ebdb;--green-300: #86cba1;--green-500: #2e7d4f;--green-700: #21603c;--green-900: #143f27}:root,[data-theme=light]{color-scheme:light;--paper-rgb: 247 248 246;--paper: rgb(var(--paper-rgb));--surface-rgb: 255 255 255;--surface: rgb(var(--surface-rgb));--sunken-rgb: 238 241 238;--sunken: rgb(var(--sunken-rgb));--ink-rgb: 27 31 29;--ink: rgb(var(--ink-rgb));--muted-rgb: 88 96 92;--muted: rgb(var(--muted-rgb));--faint-rgb: 142 150 143;--faint: rgb(var(--faint-rgb));--line: rgb(27 31 29 / .1);--line-strong: rgb(27 31 29 / .18);--grid-line: rgb(37 64 168 / .09);--margin-rule: var(--red-500);--accent-rgb: 37 64 168;--accent: rgb(var(--accent-rgb));--accent-hover: var(--blue-700);--accent-ink: #ffffff;--accent-soft: rgb(37 64 168 / .1);--accent-soft-2: rgb(37 64 168 / .18);--wrong-rgb: 214 48 58;--wrong: rgb(var(--wrong-rgb));--wrong-soft: rgb(214 48 58 / .1);--right-rgb: 46 125 79;--right: rgb(var(--right-rgb));--right-soft: rgb(46 125 79 / .1);--shadow-1: 0 1px 0 rgb(27 31 29 / .05), 0 1px 2px rgb(27 31 29 / .06);--shadow-2: 0 2px 6px -2px rgb(27 31 29 / .12), 0 8px 24px -12px rgb(27 31 29 / .18);--shadow-3: 0 12px 40px -12px rgb(27 31 29 / .35);--focus-ring: 0 0 0 2px var(--paper), 0 0 0 4px var(--accent)}[data-theme=dark]{color-scheme:dark;--paper-rgb: 20 27 24;--paper: rgb(var(--paper-rgb));--surface-rgb: 27 35 32;--surface: rgb(var(--surface-rgb));--sunken-rgb: 16 22 19;--sunken: rgb(var(--sunken-rgb));--ink-rgb: 236 239 234;--ink: rgb(var(--ink-rgb));--muted-rgb: 163 172 166;--muted: rgb(var(--muted-rgb));--faint-rgb: 107 117 111;--faint: rgb(var(--faint-rgb));--line: rgb(236 239 234 / .1);--line-strong: rgb(236 239 234 / .18);--grid-line: rgb(236 239 234 / .06);--margin-rule: #ff6e75;--accent-rgb: 143 166 255;--accent: rgb(var(--accent-rgb));--accent-hover: #a9bbff;--accent-ink: #0f1a3d;--accent-soft: rgb(143 166 255 / .14);--accent-soft-2: rgb(143 166 255 / .24);--wrong-rgb: 255 110 117;--wrong: rgb(var(--wrong-rgb));--wrong-soft: rgb(255 110 117 / .12);--right-rgb: 95 203 142;--right: rgb(var(--right-rgb));--right-soft: rgb(95 203 142 / .12);--shadow-1: 0 1px 0 rgb(0 0 0 / .25);--shadow-2: 0 2px 6px -2px rgb(0 0 0 / .4), 0 8px 24px -12px rgb(0 0 0 / .5);--shadow-3: 0 12px 40px -12px rgb(0 0 0 / .7);--focus-ring: 0 0 0 2px var(--paper), 0 0 0 4px var(--accent)}:root{--paper-grid: linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px);--paper-grid-size: var(--square) var(--square);--margin-rule-image: linear-gradient(90deg, transparent calc(var(--margin-x) - 1px), var(--margin-rule) calc(var(--margin-x) - 1px), var(--margin-rule) calc(var(--margin-x) + 1px), transparent calc(var(--margin-x) + 1px))}@media (prefers-reduced-motion: reduce){:root{--dur-1: 0ms;--dur-2: 0ms;--dur-3: 0ms;--dur-4: 0ms}}[data-variant=slick]{--font-ui: "Instrument Sans", "Atkinson Hyperlegible", system-ui, sans-serif;--weight-medium: 500;--weight-bold: 600;--fs-base: .875rem;--lh-base: 1.25rem;--fs-sm: .8125rem;--lh-sm: 1.0625rem;--fs-3xl: 1.75rem;--lh-3xl: 2rem;--tracking-tight: -.02em;--tracking-caps: .08em;--r-sm: 6px;--r-md: 8px;--r-lg: 12px;--shadow-1: none;--shadow-2: 0 1px 2px rgb(0 0 0 / .06), 0 6px 20px -10px rgb(0 0 0 / .16)}[data-variant=slick],[data-variant=slick][data-theme=light]{--line: rgb(27 31 29 / .08);--line-strong: rgb(27 31 29 / .14);--grid-line: rgb(37 64 168 / .065);--sunken-rgb: 241 243 240}[data-variant=slick][data-theme=dark]{--paper-rgb: 17 22 20;--surface-rgb: 22 29 26;--sunken-rgb: 28 36 32;--line: rgb(236 239 234 / .08);--line-strong: rgb(236 239 234 / .15);--grid-line: rgb(236 239 234 / .045);--accent-rgb: 150 172 255;--shadow-2: 0 1px 2px rgb(0 0 0 / .3), 0 8px 24px -12px rgb(0 0 0 / .5)}@media (prefers-color-scheme: dark){[data-variant=slick]:not([data-theme=light]){--paper-rgb: 17 22 20;--surface-rgb: 22 29 26;--sunken-rgb: 28 36 32;--line: rgb(236 239 234 / .08);--line-strong: rgb(236 239 234 / .15);--grid-line: rgb(236 239 234 / .045);--accent-rgb: 150 172 255;--shadow-2: 0 1px 2px rgb(0 0 0 / .3), 0 8px 24px -12px rgb(0 0 0 / .5)}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(147 197 253 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(147 197 253 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.static{position:static}.block{display:block}.table{display:table}.\!grid{display:grid!important}.grid{display:grid}.contents{display:contents}.hidden{display:none}.grow{flex-grow:1}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{--bg: var(--paper);--panel: var(--surface);--panel2: var(--sunken);--hover: var(--sunken);--border: var(--line);--border2: var(--line-strong);--acc: var(--accent);--acc-ink: var(--accent-ink);--acc-dim: var(--accent-soft);--good: var(--right);--good-dim: var(--right-soft);--bad: var(--wrong);--bad-dim: var(--wrong-soft);--sans: var(--font-ui);--mono: var(--font-num);--serif: var(--font-de)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:var(--fs-base);line-height:var(--lh-base);font-variant-numeric:tabular-nums}button{font-family:inherit;color:inherit;background:none;border:none;padding:0;font-size:inherit}input,select{font-family:inherit;font-size:inherit;color:inherit}img{max-width:100%;height:auto}a{color:inherit}::-moz-selection{background:var(--acc);color:var(--acc-ink)}::selection{background:var(--acc);color:var(--acc-ink)}:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--r-sm)}.de,.lesson strong,.qtext strong,.opt strong,.fb strong,.pairbtn strong,.tok{font-family:var(--serif);font-weight:600}.frame{min-height:100vh}.main{padding:0 14px calc(78px + env(safe-area-inset-bottom));max-width:720px;margin:0 auto}@media (min-width: 1000px){.frame{display:grid;grid-template-columns:212px minmax(0,1fr)}.main{padding:26px 36px 60px;max-width:1160px;margin:0}}.side{display:none}@media (min-width: 1000px){.side{display:flex;flex-direction:column;gap:2px;position:sticky;top:0;height:100vh;padding:22px 10px 18px;border-right:1px solid var(--border);background:var(--panel)}}.side .brand{margin:2px 10px 20px}.side a.nav{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:var(--r-sm);color:var(--muted);font-weight:500;font-size:13.5px;text-decoration:none;transition:background var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out)}.side a.nav svg{opacity:.7}.side a.nav:hover,.side a.nav.active{background:var(--hover);color:var(--ink)}.side a.nav.active svg{opacity:1;color:var(--acc)}.side .push{flex:1}.side .foot{margin:0 4px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--r-md);display:flex;align-items:center;justify-content:space-between;gap:8px}.side .foot .k{font-family:var(--mono);font-size:12px;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--faint)}.side .foot .v{font-family:var(--mono);font-size:15px;font-weight:600;color:var(--acc)}.brand{font-weight:700;font-size:17px;letter-spacing:-.02em;text-decoration:none;color:var(--ink);line-height:1}.brand em{color:var(--acc);font-style:normal}.topbar{position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);margin:0 -14px 4px;padding:12px 16px 10px;display:flex;align-items:center;gap:10px}.topbar .spacer{flex:1}.topbar a.plain-ic{color:var(--muted);display:inline-flex;padding:4px;text-decoration:none}@media (min-width: 1000px){.topbar{display:none}}.tabbar{position:fixed;bottom:0;left:0;right:0;z-index:30;display:flex;background:color-mix(in srgb,var(--panel) 92%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--border);padding:6px 6px calc(6px + env(safe-area-inset-bottom))}@media (min-width: 1000px){.tabbar{display:none}}.tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;text-decoration:none;color:var(--faint);font-size:11px;font-weight:600;padding:3px 0 1px}.tabbar a.active{color:var(--acc)}.kicker{font-family:var(--mono);font-size:11.5px;font-weight:500;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--faint);margin:18px 0 4px}.kicker b{color:var(--acc);font-weight:600}.kicker a{text-decoration:none;color:inherit}.kicker a:hover{color:var(--ink)}h1{font-weight:600;letter-spacing:var(--tracking-tight);font-size:22px;line-height:1.15;margin:0 0 4px}@media (min-width: 1000px){h1{font-size:26px}}h1 .dot{color:var(--acc)}.sub{color:var(--muted);margin:0 0 6px;font-size:13.5px;max-width:60ch}h2.sec{display:flex;align-items:baseline;gap:8px;font-family:var(--mono);font-size:11.5px;font-weight:600;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--muted);margin:22px 0 8px}h2.sec .right{margin-left:auto;color:var(--faint);font-weight:500}h2.sec .right a{color:inherit}h2.sec .right a:hover{color:var(--ink)}.cols{display:grid;gap:14px;grid-template-columns:1fr;align-items:start}@media (min-width: 1000px){.cols{grid-template-columns:minmax(0,1fr) 300px;gap:18px}}@media (max-width: 999px){.cols>.first-mobile{order:-1}}.grid2{display:grid;gap:14px;grid-template-columns:1fr;align-items:start}@media (min-width: 1000px){.grid2{grid-template-columns:1fr 1fr;gap:18px}}.panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden}.panel .phead{display:flex;align-items:baseline;gap:8px;padding:10px 14px 9px;border-bottom:1px solid var(--border);font-family:var(--mono);font-size:11.5px;font-weight:600;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--muted)}.panel .phead .right{margin-left:auto;color:var(--faint);font-weight:500}.panel .pbody{padding:12px 14px}.rowitem{display:flex;align-items:center;gap:12px;padding:10px 14px;border-bottom:1px solid var(--border);text-decoration:none;color:inherit;width:100%;text-align:left;cursor:pointer;transition:background var(--dur-2) var(--ease-out);background:none}.rowitem:last-child{border-bottom:none}a.rowitem:hover,button.rowitem:hover{background:var(--hover)}.rowitem.static{cursor:default}.rowitem.static:hover{background:none}.rowitem .no{font-family:var(--mono);font-size:12px;font-weight:500;color:var(--faint);flex:none;width:22px}a.rowitem:hover .no{color:var(--acc)}.rowitem .grow{flex:1;min-width:0}.rowitem .t1{font-weight:500;font-size:13.5px;letter-spacing:-.01em;display:block}.rowitem .t2{color:var(--muted);font-size:12px;margin-top:1px;display:block}.rowitem .end{flex:none;display:flex;align-items:center;gap:10px}.rowitem .num{font-family:var(--mono);font-size:12px;color:var(--faint)}.rowitem .arrow{color:var(--faint);font-size:14px;flex:none}.meter{height:3px;background:var(--panel2);position:relative;overflow:hidden;border-radius:var(--r-xs)}.meter>i{position:absolute;inset:0 auto 0 0;background:var(--acc);border-radius:var(--r-xs);transition:width var(--dur-3) var(--ease-out)}.meter.green>i{background:var(--good)}.squares{display:flex;flex-wrap:wrap;gap:3px}.sq{width:7px;height:7px;border-radius:var(--r-xs);background:var(--panel2)}.sq.seen{background:var(--acc);opacity:.55}.sq.solid{background:var(--good)}.figs{display:grid;grid-template-columns:1fr 1fr}.figs.four{grid-template-columns:repeat(2,1fr)}@media (min-width: 700px){.figs.four{grid-template-columns:repeat(4,1fr)}}.fig{padding:12px 14px;border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.figs .fig:nth-child(2n){border-right:none}.figs .fig:nth-last-child(-n+2){border-bottom:none}@media (min-width: 700px){.figs.four .fig{border-bottom:none}.figs.four .fig:nth-child(2n){border-right:1px solid var(--border)}.figs.four .fig:last-child{border-right:none}}.fig .v{font-family:var(--mono);font-size:22px;font-weight:600;letter-spacing:var(--tracking-num);line-height:1.15}.fig .v small{font-size:13px;font-weight:500;color:var(--faint)}.fig .l{font-size:11px;color:var(--muted);margin-top:2px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:32px;padding:0 14px;border-radius:var(--r-sm);background:var(--panel2);border:1px solid var(--border2);color:var(--ink);font-weight:500;font-size:12.5px;cursor:pointer;text-decoration:none;transition:background var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out),transform var(--dur-1) var(--ease-out);white-space:nowrap}.btn:hover{background:var(--hover);border-color:var(--faint)}.btn:active{transform:scale(.98)}.btn.acc{background:var(--acc);border-color:var(--acc);color:var(--acc-ink);font-weight:600}.btn.acc:hover{background:var(--accent-hover)}.btn.ghost{background:transparent;border-color:transparent;color:var(--muted)}.btn.ghost:hover{color:var(--ink);background:var(--hover)}.btn.small{height:26px;padding:0 10px;font-size:11.5px;border-radius:var(--r-sm)}.btn.block{width:100%}.btn:disabled{background:var(--panel2);border-color:var(--border);color:var(--faint);cursor:default;pointer-events:none}.btn.danger{color:var(--bad);border-color:var(--bad);background:transparent}.btn.danger:hover{background:var(--bad-dim)}.tabs{display:flex;gap:4px;margin:12px 0 0;overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tabs button{padding:6px 12px;cursor:pointer;white-space:nowrap;border-radius:var(--r-sm);font-weight:500;font-size:12.5px;color:var(--muted);border:1px solid transparent}.tabs button:hover{color:var(--ink);background:var(--hover)}.tabs button.on{color:var(--ink);background:var(--panel2);border-color:var(--border2)}.chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border2);border-radius:var(--r-full);background:transparent;color:var(--muted);height:28px;padding:0 12px;font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap}.chip:hover{color:var(--ink);border-color:var(--faint)}.chip.on{background:var(--acc-dim);border-color:var(--acc);color:var(--acc)}.chiprow{display:flex;gap:7px;flex-wrap:wrap}.planitem{display:flex;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid var(--border);text-decoration:none;color:inherit;transition:background var(--dur-2) var(--ease-out)}.planitem:last-child{border-bottom:none}.planitem:hover{background:var(--hover)}.planitem .no{flex:none;width:24px;height:24px;border-radius:var(--r-sm);background:var(--acc-dim);color:var(--acc);font-family:var(--mono);font-size:12px;font-weight:600;display:inline-flex;align-items:center;justify-content:center}.planitem .grow{flex:1;min-width:0}.planitem .t1{font-weight:500;font-size:13.5px;display:block}.planitem .t2{color:var(--muted);font-size:12px;margin-top:1px;display:block}.planitem .arrow{color:var(--faint)}.au-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;border:1px solid var(--border2);border-radius:var(--r-full);background:transparent;color:var(--acc);min-width:30px;height:26px;padding:0 9px;cursor:pointer;font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:var(--tracking-caps);text-transform:uppercase;vertical-align:middle;margin:1px 2px}.au-btn:hover{border-color:var(--acc)}.au-btn.playing{background:var(--acc);color:var(--acc-ink);border-color:var(--acc)}.bigplay{width:68px;height:68px;border-radius:var(--r-full);background:var(--acc);color:var(--acc-ink);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 0 0 6px var(--acc-dim)}.bigplay:hover{background:var(--accent-hover)}.playbtn{flex:none;width:34px;height:34px;border-radius:var(--r-full);border:1px solid var(--border2);color:var(--acc);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:border-color var(--dur-2) var(--ease-out)}.playbtn:hover{border-color:var(--acc)}.playbtn.on{background:var(--acc);color:var(--acc-ink);border-color:var(--acc)}.lesson{font-size:14.5px;max-width:74ch}.lesson>p:first-of-type{color:var(--muted)}.lesson h1{font-size:22px;margin:12px 0 8px}@media (min-width: 1000px){.lesson h1{font-size:25px}}.lesson h2{font-size:17px;font-weight:600;letter-spacing:-.015em;margin:28px 0 8px}.lesson h3{font-size:14px;margin:20px 0 5px;font-weight:600}.lesson p{margin:9px 0}.lesson strong{font-size:1.08em}.lesson code{font-family:var(--mono);background:var(--panel2);border:1px solid var(--border);border-radius:var(--r-xs);padding:0 5px;font-size:.82em}.lesson .de-ipa{color:var(--muted);font-size:.95em;font-family:var(--serif)}.lesson .twrap{overflow-x:auto;margin:14px 0;border:1px solid var(--border);border-radius:var(--r-md);background:var(--panel)}.lesson table{border-collapse:collapse;width:100%;margin:0;font-size:13px}.lesson th{text-align:left;font-family:var(--mono);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:var(--tracking-caps);color:var(--faint);padding:8px 12px;border-bottom:1px solid var(--border2);white-space:nowrap;background:var(--panel2)}.lesson td{padding:7px 12px;border-bottom:1px solid var(--border);vertical-align:middle}.lesson tr:last-child td{border-bottom:none}.lesson li{margin:4px 0}.lesson blockquote{margin:12px 0;padding:2px 14px;border-left:2px solid var(--acc);color:var(--muted)}.lesson details{border:1px solid var(--border);border-radius:var(--r-md);padding:10px 14px;margin:14px 0;background:var(--panel)}.lesson details summary{cursor:pointer;font-weight:600;font-size:13px;color:var(--muted)}.lesson details summary:hover{color:var(--ink)}.lesson details[open] summary{margin-bottom:8px}.lesson img{display:block;margin:14px 0;border:1px solid var(--border);border-radius:var(--r-md)}.lesson .au-set{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}.lesson .au-drill{border:1px dashed var(--border2);border-radius:var(--r-md);padding:9px 11px}.lesson .practice-card{display:flex;align-items:center;gap:12px;justify-content:space-between;border:1px solid var(--border2);border-radius:var(--r-md);background:var(--panel);padding:12px 14px;margin:18px 0}.lesson .practice-card .t{font-weight:600;font-size:13.5px}.lesson .practice-card .n{color:var(--faint);font-size:11.5px;font-family:var(--mono);letter-spacing:var(--tracking-caps);text-transform:uppercase;margin-top:2px}.lesson a.note-link{font-weight:500;cursor:pointer;color:var(--acc);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.runwrap{max-width:600px;margin:0 auto}.runhead{display:flex;align-items:center;gap:12px;margin:16px 0 0}.runhead .meter{flex:1}.runhead .cnt{font-family:var(--mono);font-size:12px;font-weight:500;color:var(--muted)}.runhead .x{color:var(--muted);cursor:pointer;display:inline-flex;padding:5px;margin-left:-5px;border-radius:var(--r-sm)}.runhead .x:hover{color:var(--ink);background:var(--hover)}.runsub{font-family:var(--mono);font-size:12px;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--faint);margin:10px 0 14px 2px}.qtext{font-size:17px;font-weight:500;line-height:1.45;margin:2px 0 16px;letter-spacing:-.01em}.qtext strong{font-size:1.1em}.opt{display:flex;align-items:center;gap:11px;width:100%;text-align:left;border:1px solid var(--border2);border-radius:var(--r-md);background:var(--panel);padding:11px 13px;margin:7px 0;cursor:pointer;font-size:14px;transition:border-color var(--dur-2) var(--ease-out),background var(--dur-2) var(--ease-out)}.opt:hover{border-color:var(--faint)}.opt .key{flex:none;width:20px;height:20px;border-radius:var(--r-xs);border:1px solid var(--border2);background:var(--panel2);font-family:var(--mono);font-size:12px;font-weight:600;color:var(--faint);display:inline-flex;align-items:center;justify-content:center}.opt.sel{border-color:var(--acc);background:var(--acc-dim)}.opt.sel .key{background:var(--acc);color:var(--acc-ink);border-color:var(--acc)}.opt.right{border-color:var(--good);background:var(--good-dim)}.opt.wrong{border-color:var(--bad);background:var(--bad-dim)}.typein{width:100%;font-size:17px;padding:11px 13px;border-radius:var(--r-md);border:1px solid var(--border2);background:var(--panel);color:var(--ink);font-family:var(--serif);font-weight:600}.typein::-moz-placeholder{color:var(--faint);font-family:var(--sans);font-weight:450;font-size:13.5px}.typein::placeholder{color:var(--faint);font-family:var(--sans);font-weight:450;font-size:13.5px}.typein:focus{outline:none;border-color:var(--acc);box-shadow:0 0 0 3px var(--acc-dim)}.umlauts{display:flex;gap:7px;margin-top:9px}.umlauts button{flex:1;max-width:52px;font-family:var(--serif);font-size:15px;font-weight:600;border:1px solid var(--border2);background:var(--panel);border-radius:var(--r-sm);padding:6px 0;cursor:pointer}.umlauts button:hover{border-color:var(--acc);color:var(--acc)}.pairgrid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.pairbtn{border:1px solid var(--border2);border-radius:var(--r-md);background:var(--panel);padding:10px 9px;cursor:pointer;font-size:13px;min-height:46px}.pairbtn:hover{border-color:var(--faint)}.pairbtn.sel{border-color:var(--acc);background:var(--acc-dim)}.pairbtn.done{opacity:.3}.pairbtn.bad{border-color:var(--bad);background:var(--bad-dim)}.orderline{min-height:52px;border:1px dashed var(--border2);border-radius:var(--r-md);padding:7px;display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px;background:var(--panel)}.orderpool{display:flex;flex-wrap:wrap;gap:6px}.tok{border:1px solid var(--border2);border-radius:var(--r-md);background:var(--panel);padding:7px 11px;cursor:pointer;font-size:14px}.tok:hover{border-color:var(--faint)}.orderline .tok{border-color:var(--acc);background:var(--acc-dim)}.fb{border:1px solid;border-radius:var(--r-md);padding:11px 13px;margin-top:14px;font-size:13.5px}.fb.ok{border-color:var(--good);background:var(--good-dim)}.fb.no{border-color:var(--bad);background:var(--bad-dim)}.fb .verdict{font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:var(--tracking-caps);text-transform:uppercase}.fb.ok .verdict{color:var(--good)}.fb.no .verdict{color:var(--bad)}.fb .why{color:var(--ink);margin-top:5px;font-size:13.5px}.runfoot{display:flex;gap:9px;margin-top:16px}.runfoot .btn{flex:1;height:38px;font-size:13px}.kbd{display:none;color:var(--faint);font-size:11px;margin-top:14px;text-align:center;font-family:var(--mono)}@media (min-width: 1000px){.kbd{display:block}}.hintlink{font-size:12.5px;color:var(--muted);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.hintlink:hover{color:var(--ink)}.flash{background:var(--panel);border:1px solid var(--border2);border-radius:var(--r-lg);padding:34px 22px;text-align:center;min-height:270px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;cursor:pointer}.flash .front{font-family:var(--serif);font-weight:600;font-size:30px;letter-spacing:-.01em}.flash .back-en{font-size:17px;font-weight:600}.flash .ipa{color:var(--muted);font-size:13px;font-family:var(--mono)}.flash .pron{color:var(--faint);font-size:12.5px}.flash .hintflip{font-family:var(--mono);font-size:10.5px;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--faint);margin-top:12px}.gradebtns{display:flex;gap:9px;margin-top:14px}.gradebtns .btn{flex:1;height:38px;font-size:13px}.btn.again{color:var(--bad);border-color:var(--bad);background:transparent}.btn.again:hover{background:var(--bad-dim)}.btn.goodb{color:var(--ink)}.btn.easy{color:var(--good);border-color:var(--good);background:transparent}.btn.easy:hover{background:var(--good-dim)}.nowplaying{position:fixed;left:14px;right:14px;bottom:calc(68px + env(safe-area-inset-bottom));z-index:25;background:var(--panel2);border:1px solid var(--border2);color:var(--ink);border-radius:var(--r-full);padding:9px 16px;display:flex;align-items:center;gap:11px;box-shadow:0 8px 28px #00000059}@media (min-width: 1000px){.nowplaying{bottom:20px;left:auto;right:36px;max-width:440px}}.nowplaying .t{flex:1;min-width:0;font-size:12.5px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nowplaying .eq{color:var(--acc);font-family:var(--mono);font-size:12px}.nowplaying button{color:var(--muted);cursor:pointer;padding:2px 3px;display:inline-flex}.nowplaying button:hover{color:var(--ink)}.actbars{display:flex;align-items:flex-end;gap:5px;height:84px}.actbars .b{flex:1;display:flex;flex-direction:column;justify-content:flex-end;height:100%}.actbars .b i{display:block;background:var(--acc);min-height:3px;border-radius:var(--r-xs)}.actbars .b.zero i{background:var(--panel2)}.actlbls{display:flex;gap:5px;margin-top:5px}.actlbls span{flex:1;text-align:center;font-family:var(--mono);font-size:9px;color:var(--faint)}.meterrow{padding:9px 14px;border-bottom:1px solid var(--border)}.meterrow:last-child{border-bottom:none}.meterrow .top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}.meterrow .name{font-weight:500;font-size:13px}.meterrow .num{font-family:var(--mono);font-size:12px;color:var(--faint)}.empty{text-align:center;color:var(--muted);padding:48px 20px;font-size:13px}.center{text-align:center}.row{display:flex;align-items:center;gap:9px}.mt{margin-top:12px}.note{color:var(--faint);font-size:12px}.note a{color:var(--muted)}.note a:hover{color:var(--ink)}.finish{text-align:center;padding:56px 16px;max-width:480px;margin:0 auto}.finish .kicker{margin-bottom:8px}.finish h2{font-size:30px;font-weight:600;letter-spacing:-.03em;margin:0 0 6px}.finish .sub{margin:0 auto 22px}select.plain{background:var(--panel2);border:1px solid var(--border2);border-radius:var(--r-sm);padding:6px 10px;font-weight:500;font-size:12.5px;cursor:pointer}.settingrow{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border-bottom:1px solid var(--border)}.settingrow:last-child{border-bottom:none}.settingrow .l1{font-weight:500;font-size:13.5px}.settingrow .l2{color:var(--muted);font-size:12px;margin-top:1px}.slideview{display:flex;align-items:center;gap:10px}.slidenav{flex:none;width:36px;height:64px;border:1px solid var(--border2);border-radius:var(--r-md);color:var(--muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.slidenav:first-child svg{transform:rotate(180deg)}.slidenav:hover:not(:disabled){color:var(--ink);border-color:var(--faint)}.slidenav:disabled{opacity:.25;cursor:default}.slideimg{flex:1;min-width:0;cursor:pointer}.slideimg img{display:block;width:100%;border:1px solid var(--border);border-radius:var(--r-md);background:#fff}.slidegrid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}@media (min-width: 700px){.slidegrid{grid-template-columns:repeat(4,1fr)}}.slidethumb{position:relative;border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden;cursor:pointer;padding:0}.slidethumb:hover,.slidethumb.on{border-color:var(--acc)}.slidethumb img{display:block;width:100%;background:#fff}.slidethumb span{position:absolute;right:5px;bottom:5px;font-family:var(--mono);font-size:12px;padding:1px 6px;border-radius:var(--r-xs);background:#0000008c;color:#fff}.lock{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.lock .box{width:100%;max-width:320px;text-align:center}.lock .brand{font-size:30px}.lock .sub{margin:10px auto 20px}.lock input{width:100%;padding:11px 14px;border-radius:var(--r-md);text-align:center;border:1px solid var(--border2);background:var(--panel);color:var(--ink);font-size:15px}.lock input:focus{outline:none;border-color:var(--acc)}.lock .btn{margin-top:10px;width:100%;height:38px}.lock .err{color:var(--bad);font-size:12.5px;margin-top:10px;min-height:16px}.errbanner{border:1px solid var(--bad);background:var(--bad-dim);border-radius:var(--r-md);padding:12px 14px;margin:14px 0}.errbanner .h{font-family:var(--mono);font-size:12px;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--bad);font-weight:600}.errbanner .m{font-size:13px;margin-top:5px}.errbanner .hint{font-size:12px;margin-top:4px;color:var(--muted)}.ruled{background-color:var(--surface);background-image:var(--margin-rule-image),var(--paper-grid);background-size:100% 100%,var(--paper-grid-size);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--sp-4) var(--sp-3) var(--sp-4) calc(var(--margin-x) + var(--sp-2));margin-top:var(--sp-2)}.ruled .typein{background:transparent;border:0;border-radius:0;padding:0 2px;height:var(--sp-10);line-height:var(--sp-10);border-bottom:1.5px solid var(--accent);color:var(--accent)}.ruled .typein:focus{box-shadow:none;border-bottom-color:var(--accent-hover)}.ruled .typein:disabled{color:var(--ink);border-bottom-color:var(--line-strong)}.ruled .umlauts{margin-top:var(--sp-2)}.ruled .umlauts button{background:var(--surface)}.ruled .prompt{color:var(--muted);font-size:var(--fs-sm);line-height:var(--sp-5);margin-bottom:2px}.flash.flipped{background-image:var(--paper-grid);background-size:var(--paper-grid-size)}.leitner{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;padding:12px 14px 8px}.lbox{border:1px solid var(--line-strong);border-bottom-width:3px;border-radius:var(--r-sm);background:var(--sunken);padding:8px 8px 7px;min-width:0;display:grid;gap:2px;align-content:start}.lbox.hot{border-color:var(--accent)}.lbox .bn{font-family:var(--mono);font-size:11px;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--faint);font-weight:600}.lbox .bc{font-family:var(--mono);font-size:22px;font-weight:600;line-height:1.05;letter-spacing:var(--tracking-num)}.lbox .bl{font-size:10.5px;color:var(--muted);line-height:1.2}.lbox .bd{font-family:var(--mono);font-size:11px;font-weight:600;color:var(--accent);letter-spacing:var(--tracking-caps);text-transform:uppercase;margin-top:2px}.lbox.last{border-color:var(--right)}.lbox.last .bc{color:var(--right)}.lnote{padding:0 14px 12px;font-size:var(--fs-xs);color:var(--muted);display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}@media (max-width: 480px){.lbox .bl{display:none}.lbox .bc{font-size:19px}}@media (max-width: 699px){.lesson .twrap{border:0;border-radius:0;background:transparent;margin:14px -14px;overflow:visible}.lesson table.vocab{display:block;font-size:var(--fs-base)}.lesson table.vocab thead,.lesson table.vocab tr:first-child:has(th){display:none}.lesson table.vocab tbody{display:block}.lesson table.vocab tr{display:flex;flex-wrap:wrap;align-items:baseline;-moz-column-gap:8px;column-gap:8px;row-gap:1px;padding:10px 14px 11px;border-bottom:1px solid var(--line);background:var(--surface)}.lesson table.vocab tr:first-child{border-top:1px solid var(--line)}.lesson table.vocab td{display:block;padding:0;border:0}.lesson table.vocab tr:after{content:"";order:3;flex-basis:100%;height:0}.lesson table.vocab td[data-col=lead],.lesson table.vocab td[data-col=letter]{order:0;flex:none;font-family:var(--mono);font-weight:600;font-size:var(--fs-sm);color:var(--accent);min-width:22px}.lesson table.vocab td[data-col=german]{order:1;flex:1 1 auto;min-width:0;font-size:var(--fs-lg);line-height:var(--lh-lg)}.lesson table.vocab td[data-col=german] strong{font-size:1em}.lesson table.vocab td[data-col=audio]{order:2;flex:none;margin-left:auto;align-self:center;white-space:nowrap}.lesson table.vocab td[data-col=audio] .au-btn{margin:0 0 0 4px}.lesson table.vocab td[data-col=english]{order:4;flex:0 0 100%;color:var(--ink)}.lesson table.vocab td[data-col=ipa],.lesson table.vocab td[data-col=pron],.lesson table.vocab td[data-col=other]{order:5;flex:0 1 auto;font-size:var(--fs-sm);color:var(--muted)}.lesson table.vocab td[data-col=ipa] .de-ipa{font-size:1em}.lesson table.vocab td[data-col=pron] code{background:transparent;border:0;padding:0;font-size:1em;color:var(--muted)}.lesson table.vocab td:empty{display:none}.lesson table:not(.vocab){font-size:var(--fs-sm)}.lesson table:not(.vocab) th,.lesson table:not(.vocab) td{padding:7px 10px}.lesson table:not(.vocab) tr>:first-child{position:sticky;left:0;background:var(--surface);box-shadow:1px 0 0 var(--line);z-index:1}.lesson table:not(.vocab) th:first-child{background:var(--sunken)}.lesson .twrap:has(table:not(.vocab)){overflow-x:auto;margin:14px 0;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}}.lesson ul,.lesson ol{padding-left:1.25rem}.lesson ul ul,.lesson ol ul{margin:2px 0 4px}.lesson .exlist{list-style:none;padding:0;margin:12px 0;display:grid;gap:8px}.lesson .ex{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);padding:10px 12px 11px;display:grid;gap:2px;position:relative}.lesson .ex-no{position:absolute;top:9px;right:12px;font-family:var(--mono);font-size:var(--fs-xs);font-weight:600;color:var(--faint);letter-spacing:var(--tracking-num)}.lesson .ex-de{font-family:var(--serif);font-weight:600;font-size:var(--fs-lg);line-height:var(--lh-lg);padding-right:22px}.lesson .ex-de strong{font-size:1em}.lesson .ex-en{color:var(--ink)}.lesson .ex-meta{color:var(--muted);font-size:var(--fs-sm);display:flex;flex-wrap:wrap;gap:2px 12px}.lesson .ex-meta code{background:transparent;border:0;padding:0;font-size:1em;color:inherit}.lesson .ex-meta .de-ipa{font-size:1em}.lesson .ex-au{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.lesson .ex-au .au-btn{margin:0}@media (min-width: 700px){.lesson .exlist{grid-template-columns:1fr 1fr}}
