@font-face{font-family:Zilla Slab;font-style:normal;font-display:swap;font-weight:500;src:url(/login/assets/zilla-slab-latin-500-normal-CzZRcrUb.woff2)format("woff2"),url(/login/assets/zilla-slab-latin-500-normal-B8-aa0aC.woff)format("woff")}@font-face{font-family:Zilla Slab;font-style:normal;font-display:swap;font-weight:700;src:url(/login/assets/zilla-slab-latin-700-normal-CEKI1vVu.woff2)format("woff2"),url(/login/assets/zilla-slab-latin-700-normal-C8aaVMsA.woff)format("woff")}@font-face{font-family:Zilla Slab;font-style:normal;font-display:swap;font-weight:500;src:url(/login/assets/zilla-slab-latin-ext-500-normal-BtCblgyy.woff2)format("woff2"),url(/login/assets/zilla-slab-latin-ext-500-normal-CU92Uk-1.woff)format("woff")}@font-face{font-family:Zilla Slab;font-style:normal;font-display:swap;font-weight:700;src:url(/login/assets/zilla-slab-latin-ext-700-normal-C1-U_e_0.woff2)format("woff2"),url(/login/assets/zilla-slab-latin-ext-700-normal-DQD_oLH8.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/login/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(/login/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/login/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2)format("woff2"),url(/login/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/login/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2)format("woff2"),url(/login/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/login/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2)format("woff2"),url(/login/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/login/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2)format("woff2"),url(/login/assets/ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/login/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2)format("woff2"),url(/login/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/login/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2)format("woff2"),url(/login/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/login/assets/ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2)format("woff2"),url(/login/assets/ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/login/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2)format("woff2"),url(/login/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/login/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/login/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/login/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/login/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/login/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2)format("woff2"),url(/login/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/login/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2)format("woff2"),url(/login/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff)format("woff")}:root{--ok:var(--joy-ink);--ok-bg:var(--joy-bg);--f-display:"Zilla Slab",Georgia,serif;--f-body:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif;--f-mono:"IBM Plex Mono",ui-monospace,Menlo,monospace}:root,[data-theme=night]{--paper:#131a23;--card:#1a232e;--ink:#e3e8ef;--muted:#9ba7b6;--line:#2b3644;--soft:#222c38;--accent:#e3e8ef;--accent-ink:#131a23;--der:#8fb8e8;--die:#f0a29b;--das:#8fd0a5;--pl:#c2adeb;--verb:#e8b77d;--joy:#e0ac48;--joy-ink:#ebc06e;--joy-bg:#3a3020;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=light],[data-theme=auto]{--paper:#f7f3ea;--card:#fffdf8;--ink:#2f2a25;--muted:#6b6358;--line:#e7e0d3;--soft:#efe9dd;--accent:#2f2a25;--accent-ink:#fffdf8;--der:#3a6894;--die:#a94d47;--das:#386f4b;--pl:#735c9b;--verb:#87592a;--joy:#d9a441;--joy-ink:#86601a;--joy-bg:#f8ecd0;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){[data-theme=auto]{--paper:#1e1b18;--card:#26221e;--ink:#ece5d8;--muted:#a79e90;--line:#3a342e;--soft:#2e2924;--accent:#ece5d8;--accent-ink:#1e1b18;--der:#8fb3d9;--die:#e39a93;--das:#93c4a0;--pl:#bba8dd;--verb:#ddb07a;--joy:#d9a441;--joy-ink:#e4bb6a;--joy-bg:#3a2f1c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}[data-theme=dark]{--paper:#1e1b18;--card:#26221e;--ink:#ece5d8;--muted:#a79e90;--line:#3a342e;--soft:#2e2924;--accent:#ece5d8;--accent-ink:#1e1b18;--der:#8fb3d9;--die:#e39a93;--das:#93c4a0;--pl:#bba8dd;--verb:#ddb07a;--joy:#d9a441;--joy-ink:#e4bb6a;--joy-bg:#3a2f1c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=mountain]{--paper:#e4e8eb;--card:#f4f6f8;--ink:#1d2833;--muted:#4b5964;--line:#c8d0d6;--soft:#d9dfe3;--accent:#1d2833;--accent-ink:#f4f6f8;--der:#245489;--die:#9c3b3b;--das:#255f40;--pl:#5b478e;--verb:#704c1c;--joy:#e8995a;--joy-ink:#743f0a;--joy-bg:#f8e1cf;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=sea]{--paper:#f2e8d2;--card:#fbf6ea;--ink:#183440;--muted:#4a6170;--line:#dccfb2;--soft:#e8dcc0;--accent:#183440;--accent-ink:#fbf6ea;--der:#1f5a8c;--die:#a0403a;--das:#2b6448;--pl:#5c4890;--verb:#764c1c;--joy:#5fbdb8;--joy-ink:#175e5b;--joy-bg:#d3eeea;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=spring]{--paper:#4f7942;--card:#3c5d32;--ink:#fff;--muted:#eef6e6;--line:#86b874;--soft:#436638;--accent:#c6eb9c;--accent-ink:#203419;--der:#a9d4ff;--die:#ffbcb2;--das:#d4f5a0;--pl:#dccaff;--verb:#ffd9a0;--joy:#c6eb9c;--joy-ink:#e8fad0;--joy-bg:#5a8a4b;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=contrast]{--paper:#fff;--card:#fff;--ink:#000;--muted:#3a3a3a;--line:#5a5a5a;--soft:#efefef;--accent:#000;--accent-ink:#fff;--der:#003f80;--die:#9a0000;--das:#00561c;--pl:#470080;--verb:#5f3300;--joy:#e0a52a;--joy-ink:#5c3d00;--joy-bg:#fff0c8;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font:400 16px/1.55 var(--f-body);-webkit-font-smoothing:antialiased;margin:0}a{color:var(--ink);-webkit-text-decoration-color:var(--muted);text-decoration-color:var(--muted);text-underline-offset:2px}a:hover{-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}img{max-width:100%}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.wrap{max-width:980px;padding-left:max(18px,env(safe-area-inset-left,0px));padding-right:max(18px,env(safe-area-inset-right,0px));margin:0 auto}.top{z-index:20;background:var(--paper);border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top,0px);position:sticky;top:0}.top .wrap{flex-wrap:wrap;align-items:center;gap:18px;min-height:58px;display:flex}.brand{font:700 20px/1 var(--f-display);color:var(--ink);align-items:center;gap:8px;text-decoration:none;display:flex}.brand i{gap:2px;display:inline-flex}.brand i b{width:6px;height:18px;display:block}.brand i b:first-child{background:var(--der)}.brand i b:nth-child(2){background:var(--die)}.brand i b:nth-child(3){background:var(--das)}.nav{flex-wrap:wrap;gap:4px;margin-left:auto;display:flex}.nav a{color:var(--muted);border-radius:6px;padding:7px 10px;font-size:14px;font-weight:500;text-decoration:none}.nav a:hover,.nav a[aria-current=page]{color:var(--ink);background:var(--soft)}@media (width<=640px){.top .wrap{gap:8px;padding-block:10px}.nav{flex-wrap:nowrap;width:100%;margin-left:0;overflow-x:auto}.nav a{white-space:nowrap}}main{padding-block:36px 72px}h1{font:700 clamp(30px,5.4vw,46px)/1.08 var(--f-display);text-wrap:balance;margin:0}h2{font:700 clamp(22px,3.4vw,28px)/1.2 var(--f-display);text-wrap:balance;margin:48px 0 12px}h3{font:600 17px/1.3 var(--f-body);margin:24px 0 8px}.lead{color:var(--muted);max-width:62ch;margin:14px 0 0;font-size:18px}p{max-width:68ch}.eyebrow{font:500 12px/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 12px}.small{color:var(--muted);font-size:13px}.g-m{color:var(--der)}.g-f{color:var(--die)}.g-n{color:var(--das)}.g-pl{color:var(--pl)}.g-v{color:var(--verb)}.btn{font:600 14px/1 var(--f-body);border:1px solid var(--accent);color:var(--accent);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:6px;padding:10px 14px;text-decoration:none;display:inline-flex}.btn.solid{background:var(--accent);color:var(--accent-ink)}.btn:hover{filter:brightness(1.08)}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{font:500 13px/1 var(--f-body);border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;border-radius:999px;padding:7px 11px}.chip[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}input[type=search],select{font:inherit;border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:8px;min-width:0;padding:10px 12px;font-size:15px}input[type=search]{flex:240px}.hero{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:end;gap:36px;display:grid}@media (width<=760px){.hero{grid-template-columns:1fr}}.genders{font:500 clamp(26px,4vw,34px)/1.1 var(--f-display);gap:8px;display:grid}.genders div{border-bottom:1px solid var(--line);align-items:baseline;gap:12px;padding-bottom:8px;display:flex}.genders .lbl{font:500 13px var(--f-mono);color:var(--muted);margin-left:auto}.genders .a{font-weight:700}.cards{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin-top:20px;display:grid}.card{background:var(--card);border:1px solid var(--line);color:var(--ink);border-radius:12px;align-content:start;gap:6px;padding:18px;text-decoration:none;display:grid}.card:hover{border-color:var(--muted)}.card b{font:700 20px/1.2 var(--f-display)}.card span{color:var(--muted);font-size:14px}.card em{font:500 12px var(--f-mono);color:var(--joy-ink);font-style:normal}.today{background:var(--card);border:1px solid var(--line);border-radius:12px;gap:12px;padding:20px;display:grid}.today h3{margin:0}.progress{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;display:grid}.meter{gap:6px;display:grid}.meter .track{background:var(--soft);border-radius:4px;height:8px;overflow:hidden}.meter .track i{background:var(--joy);width:0;height:100%;transition:width .6s;display:block}.meter b{font:600 22px/1 var(--f-display);font-variant-numeric:tabular-nums}.tbl-wrap{border:1px solid var(--line);background:var(--card);border-radius:10px;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:9px 12px}th{font:600 12px var(--f-body);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:var(--soft)}tr:last-child td{border-bottom:0}td.de{font-weight:600}.grid-all td{font-family:var(--f-mono);white-space:nowrap;font-size:13px}.grid-all td:first-child{font-family:var(--f-body);white-space:normal;min-width:160px;font-style:italic}.bar{z-index:5;background:var(--paper);border-bottom:1px solid var(--line);gap:10px;margin-top:22px;padding-block:14px 10px;display:grid;position:sticky;top:59px}@media (width<=640px){.bar{position:static}}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.meta{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;font-size:13px;display:flex}.list{gap:6px;margin-top:14px;display:grid}.empty{text-align:center;color:var(--muted);padding:40px 0}.more{justify-content:center;margin-top:14px;display:flex}.item{background:var(--card);border:1px solid var(--line);border-radius:10px}.item summary{cursor:pointer;grid-template-columns:3.2em minmax(0,1fr) auto;align-items:baseline;gap:4px 12px;padding:10px 14px;list-style:none;display:grid}.item summary::-webkit-details-marker{display:none}.num{font:400 12px var(--f-mono);color:var(--muted);font-variant-numeric:tabular-nums}.w{font:500 19px/1.3 var(--f-display);min-width:0}.w .art{margin-right:4px;font-weight:700}.sr{text-align:right;font-size:14px}.sub{font:400 13px var(--f-mono);color:var(--ink);opacity:.85;grid-column:2/4;min-width:0}.tag{font:400 11px var(--f-mono);background:var(--soft);color:var(--muted);vertical-align:middle;border-radius:4px;margin-left:6px;padding:1px 6px}.item.known{border-color:var(--ok)}.item.known .w:after{content:" ✓";color:var(--ok);font-size:14px}.detail{border-top:1px dashed var(--line);gap:12px;padding:6px 14px 16px;display:grid}.note{background:var(--soft);border-radius:8px;max-width:72ch;padding:9px 12px;font-size:14px}.tables{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;display:grid}.mini{min-width:0}.mini h4{font:600 11px var(--f-body);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 4px}.mini table{font:400 13px var(--f-mono)}.mini td{padding:3px 6px}.mini td:first-child{color:var(--muted);width:4.5em}@media (width<=560px){.item summary{grid-template-columns:minmax(0,1fr) auto}.num{display:none}.sub{grid-column:1/3}}.sent{background:var(--card);border:1px solid var(--line);border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:4px 12px;padding:12px 14px;display:grid}.sent .de{font:500 18px/1.35 var(--f-display)}.sent .sr{text-align:left;color:var(--muted);grid-column:1}.sent .nt{color:var(--muted);grid-column:1;font-size:13px}.sent .nt b{color:var(--ink);font-weight:500}.sent .act{flex-direction:column;grid-area:1/2/4;align-items:flex-end;gap:6px;display:flex}.sent.known{border-color:var(--ok);background:linear-gradient(var(--ok-bg),var(--ok-bg)) left/4px 100% no-repeat,var(--card)}.sent.hide-de .de{filter:blur(6px);cursor:pointer}.sent.hide-de .de:hover{filter:blur(3px)}.group-h{font:700 20px/1.2 var(--f-display);margin:26px 0 4px}.group-h small{font:400 13px var(--f-body);color:var(--muted);margin-left:8px}.tiny{font:600 12px var(--f-body);border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;white-space:nowrap;border-radius:6px;padding:6px 9px}.tiny[aria-pressed=true]{background:var(--joy);color:#2f2a25;border-color:var(--joy)}.fc{background:var(--card);border:1px solid var(--line);text-align:center;border-radius:14px;justify-items:center;gap:14px;margin-top:14px;padding:30px 20px;display:grid}.fc .front{font:500 clamp(26px,6vw,38px)/1.2 var(--f-display)}.fc .back{gap:6px;font-size:18px;display:grid}.fc .forms{font:400 14px var(--f-mono);color:var(--muted)}.weeks{gap:6px;margin-top:14px;display:grid}.week{background:var(--card);border:1px solid var(--line);border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:4px 14px;padding:12px 14px;display:grid}.week .wn{font:700 22px/1 var(--f-display);font-variant-numeric:tabular-nums;text-align:right;width:2ch}.week .lv{font:500 11px var(--f-mono);background:var(--soft);color:var(--muted);border-radius:4px;padding:2px 6px}.week .g{font-weight:600}.week .goal{color:var(--muted);font-size:14px}.week .links{font-size:13px}.week.done{border-color:var(--joy);background:linear-gradient(var(--joy-bg),var(--joy-bg)) left/4px 100% no-repeat,var(--card)}.week.done .wn{color:var(--ok)}.week.current{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.week label{cursor:pointer;white-space:nowrap;align-items:center;gap:6px;font-size:13px;display:flex}.check{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:6px 16px}.check li{padding:6px 0}footer{border-top:1px solid var(--line);color:var(--muted);padding-block:24px 40px;font-size:13px}footer .wrap{flex-wrap:wrap;justify-content:space-between;gap:12px;display:flex}.toast{left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));background:var(--ink);color:var(--paper);z-index:30;border-radius:8px;max-width:calc(100vw - 32px);padding:10px 16px;font-size:14px;position:fixed;transform:translate(-50%)}@media (prefers-reduced-motion:no-preference){.item,.card,.sent{transition:border-color .15s}}@media print{.top,.bar,footer,.act,.btn{display:none!important}}.tbl-wrap table{min-width:560px}.gnav{z-index:5;background:var(--paper);border-bottom:1px solid var(--line);margin-top:18px;padding-block:12px;position:sticky;top:59px}.gnav .chip{text-decoration:none}.gnav small{color:var(--muted);margin-left:2px;font-size:11px}@media (width<=640px){.gnav{position:static}}.glevel h2{scroll-margin-top:120px}.gwk{font:400 13px var(--f-mono);color:var(--muted);margin-left:8px}.gtopics{gap:6px;margin-top:12px;display:grid}.gtopic{background:var(--card);border:1px solid var(--line);border-radius:10px;scroll-margin-top:120px}.gtopic summary{cursor:pointer;grid-template-columns:2.2em minmax(0,1fr) auto;align-items:baseline;gap:12px;padding:12px 14px;list-style:none;display:grid}.gtopic summary::-webkit-details-marker{display:none}.gtopic summary:after{content:"+";font:400 20px/1 var(--f-mono);color:var(--muted)}.gtopic[open] summary:after{content:"−"}.gtopic[open]{border-color:var(--muted)}.gn{font:400 12px var(--f-mono);color:var(--muted);font-variant-numeric:tabular-nums}.gt{flex-wrap:wrap;align-items:baseline;gap:4px 10px;min-width:0;display:flex}.gt b{font:600 17px/1.3 var(--f-body)}.gt i{font:500 15px/1.3 var(--f-display);color:var(--muted);font-style:normal}.gbody{border-top:1px dashed var(--line);gap:10px;padding:4px 16px 18px;display:grid}.gbody p{margin:0}.gbody h4{font:600 11px var(--f-body);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:8px 0 0}.gsum{padding-top:10px;font-weight:500}.gcap{font:600 13px var(--f-body);margin:6px 0 -4px!important}.gtbl table{min-width:0}.gtbl td{font-family:var(--f-mono);font-size:13px}.gtbl td:first-child{font-family:var(--f-body);color:var(--muted)}.grules,.gex,.gerr{gap:6px;margin:0;padding-left:18px;display:grid}.gex{padding:0;list-style:none}.gex li{background:var(--soft);border-radius:8px;gap:1px;padding:6px 10px;display:grid}.gex li span:first-child{font:500 16px/1.35 var(--f-display)}.gex li span:last-child{color:var(--muted);font-size:14px}.gerr{padding:0;list-style:none}.gerr li{grid-template-columns:auto auto minmax(0,1fr);align-items:baseline;gap:2px 8px;display:grid}.gerr s{color:var(--die)}.gerr b{color:var(--ok);font-weight:600}.gerr span{color:var(--muted);grid-column:1/-1;font-size:14px}@media print{.gtopic{break-inside:avoid}.gtopic .gbody{display:grid!important}}.acct{font:600 13px/1 var(--f-body);border:1px solid var(--accent);color:var(--accent);cursor:pointer;white-space:nowrap;background:0 0;border-radius:999px;padding:8px 12px}.acct:hover{background:var(--accent);color:var(--accent-ink)}dialog.auth{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:14px;width:min(420px,100vw - 32px);padding:22px 22px 14px;box-shadow:0 20px 60px #00000040}dialog.auth::backdrop{background:#0a0e1473}.auth h2{margin:0 0 6px;font-size:24px}.auth form{gap:12px;display:grid}.auth .x{color:var(--muted);font:400 26px/1 var(--f-body);cursor:pointer;background:0 0;border:0;padding:4px 8px;position:absolute;top:10px;right:12px}.auth .fld{gap:4px;font-size:14px;font-weight:500;display:grid}.auth input{font:inherit;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:8px;padding:10px 12px;font-size:16px}.auth .btn{justify-content:center;padding:12px 14px}.auth .links{flex-wrap:wrap;justify-content:space-between;gap:8px;margin:0;font-size:14px;display:flex}.auth .msg{min-height:1.2em;color:var(--die);margin:0;font-size:14px}.auth .msg.ok{color:var(--ok)}.auth p{margin:0}.btn.danger{background:var(--die);border-color:var(--die);color:#fff}.invite{margin-top:20px}.invite input{font:inherit;border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:8px;flex:260px;padding:10px 12px;font-size:16px}main>.msg{color:var(--die);min-height:1.2em;font-size:14px}main>.msg.ok{color:var(--ok)}.act-cell{white-space:nowrap;text-align:right}.login-hero{min-height:40vh}dialog.auth.locked::backdrop{background:#0a0e1440}.goal-ring{align-items:center;gap:14px;display:flex}.goal-ring svg{flex:none;width:64px;height:64px;transform:rotate(-90deg)}.goal-ring circle{fill:none;stroke-width:7px}.goal-ring .bg{stroke:var(--soft)}.goal-ring .fg{stroke:var(--joy);stroke-linecap:round;transition:stroke-dashoffset .6s}.goal-ring b{font:600 22px/1 var(--f-display);font-variant-numeric:tabular-nums}.goal-ring.done b{color:var(--joy-ink)}.today-goal{color:var(--joy-ink);font-size:13px;font-weight:600}@media (prefers-reduced-motion:no-preference){.glow{animation:1.2s ease-out glow}@keyframes glow{0%{box-shadow:0 0 0 0 var(--joy)}40%{box-shadow:0 0 0 6px color-mix(in srgb,var(--joy) 35%,transparent)}to{box-shadow:0 0 #0000}}}.top .wrap{position:relative}.menu{right:max(18px,env(safe-area-inset-right,0px));z-index:40;background:var(--card);border:1px solid var(--line);border-radius:12px;min-width:230px;padding:6px;display:grid;position:absolute;top:calc(100% - 4px);box-shadow:0 12px 32px #00000024}.menu .who{color:var(--muted);text-overflow:ellipsis;margin:4px 10px 6px;font-size:12px;overflow:hidden}.menu a,.menu button{font:500 14px/1.2 var(--f-body);text-align:left;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:10px 12px;text-decoration:none}.menu a:hover,.menu button:hover,.menu a:focus-visible,.menu button:focus-visible{background:var(--soft)}.menu button{border-top:1px solid var(--line);border-radius:0 0 8px 8px;margin-top:4px}.say{font:400 14px/1 var(--f-body);cursor:pointer;vertical-align:middle;filter:saturate(.6);background:0 0;border:0;border-radius:6px;margin-left:4px;padding:3px 5px}.say:hover{background:var(--soft);filter:none}.say-pair{gap:2px;display:inline-flex}.set{background:var(--card);border:1px solid var(--line);border-radius:12px;gap:10px;margin-top:16px;padding:6px 18px 18px;display:grid}.set h2{margin:12px 0 0;font-size:22px}.set .small{margin:6px 0 -4px}.opts{flex-wrap:wrap;gap:8px;display:flex}.opt{border:1px solid var(--line);cursor:pointer;border-radius:10px;align-items:center;gap:8px;padding:9px 12px;font-size:15px;display:flex}.opt:has(input:checked){border-color:var(--ink);background:var(--soft)}.chk{align-items:center;gap:8px;font-size:15px;display:flex}.fld2{gap:4px;max-width:360px;font-size:14px;display:grid}.fld2 input,.fld2 select{font:inherit;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:8px;padding:9px 12px;font-size:16px}.pw{gap:10px;display:grid}.pw .msg{color:var(--die);margin:0;font-size:14px}.pw .msg.ok{color:var(--joy-ink)}.btn.danger-line{border-color:var(--die);color:var(--die)}.stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-top:22px;display:grid}.stat{background:var(--card);border:1px solid var(--line);border-radius:12px;gap:6px;padding:14px 16px;display:grid}.stat b{font:700 28px/1 var(--f-display);font-variant-numeric:tabular-nums}.calendar{background:var(--card);border:1px solid var(--line);border-radius:12px;max-width:520px;margin-top:16px;padding:14px 16px 10px}.cal-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.cal-head h2{text-transform:capitalize;margin:0;font-size:22px}.cal-head .btn{padding:6px 12px;font-size:18px}.cal-days,.cal-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.cal-days{color:var(--muted);text-align:center;margin:14px 0 6px;font-size:12px}.cd{aspect-ratio:1;background:var(--soft);font-variant-numeric:tabular-nums;border-radius:10px;align-content:center;place-items:center;font-size:14px;display:grid;position:relative}.cd i{color:var(--muted);font-size:11px;font-style:normal}.cd.empty{background:0 0}.cd.l1{background:color-mix(in srgb,var(--joy) 25%,var(--soft))}.cd.l2{background:color-mix(in srgb,var(--joy) 55%,var(--soft))}.cd.l3{background:var(--joy);color:#2f2a25}.cd.l3 i{color:#2f2a25;font-weight:700}.cd.today{outline:2px solid var(--ink);outline-offset:1px}.cal-legend{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.cal-legend .cd{aspect-ratio:auto;border-radius:4px;width:16px;height:16px;display:inline-block}.levels{grid-template-columns:1fr}@media (width<=560px){.cd{border-radius:7px;font-size:12px}.cd i{font-size:9px}}.themes{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.tp{border:2px solid var(--line);cursor:pointer;background:var(--paper);color:var(--ink);border-radius:12px;gap:8px;padding:10px;font-size:14px;font-weight:500;display:grid}.tp:has(input:checked){border-color:var(--joy)}.tp input{opacity:0;pointer-events:none;position:absolute}.tp .sw{font:700 15px/1 var(--f-display);background:var(--card);border:1px solid var(--line);border-radius:8px;align-items:baseline;gap:6px;padding:8px;display:flex}.tp .sw b:first-child{color:var(--der)}.tp .sw b:nth-child(2){color:var(--die)}.tp .sw b:nth-child(3){color:var(--das)}.tp .sw i{background:var(--joy);border-radius:4px;width:22px;height:8px;margin-left:auto}.tp:focus-within{outline:2px solid var(--ink);outline-offset:2px}.fc-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;width:100%;display:flex}.fc-top p{margin:0}.legend{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:6px 10px;display:inline-block}[data-theme=spring] .btn:not(.solid),[data-theme=spring] .acct{color:var(--ink)}[data-theme=spring] .acct:hover{color:var(--accent-ink)}.burger{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:42px;height:42px;margin-left:auto;display:none}.burger span{background:var(--ink);border-radius:2px;width:20px;height:2px;transition:transform .2s,opacity .2s;display:block}.burger.open span:first-child{transform:translateY(7px)rotate(45deg)}.burger.open span:nth-child(2){opacity:0}.burger.open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.mnav{z-index:40;background:var(--card);border-bottom:1px solid var(--line);padding:8px max(18px,env(safe-area-inset-left,0px)) 16px;gap:8px;max-height:calc(100vh - 70px);display:grid;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 16px 32px #0000002e}.mnav a,.mnav button{text-align:left;width:100%;font:500 17px/1.2 var(--f-body);color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:10px;padding:13px 12px;text-decoration:none;display:block}.mnav a:hover,.mnav button:hover,.mnav a[aria-current=page]{background:var(--soft)}.mnav-acct{border-top:1px solid var(--line);padding-top:8px}.mnav .who{color:var(--muted);margin:4px 12px;font-size:13px}@media (width<=640px){.nav,.acct{display:none!important}.burger:not([hidden]){display:inline-flex}.top .wrap{flex-wrap:nowrap;min-height:60px}}.lvl-tabs{margin:22px 0 4px}.lvl-tabs .chip{text-decoration:none}.lvl-tabs small{color:var(--muted);font-size:11px}.lvl-tabs .chip[aria-pressed=true] small{color:inherit;opacity:.8}.lsum{flex-wrap:wrap;align-items:end;gap:16px;margin:18px 0;display:flex}.lsum .meter{flex:260px}.lessons{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;display:grid}.lesson{background:var(--card);border:1px solid var(--line);color:var(--ink);border-radius:12px;align-content:start;gap:4px;padding:12px 14px;text-decoration:none;display:grid;position:relative}.lesson:hover{border-color:var(--muted)}.lesson .ln{font:700 22px/1 var(--f-display);font-variant-numeric:tabular-nums}.lesson .lt{font-size:14px;font-weight:600}.lesson .lw{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.lesson .ls{font:600 12px var(--f-mono);color:var(--joy-ink);position:absolute;top:12px;right:12px}.lesson.done{border-color:var(--joy);background:linear-gradient(var(--joy-bg),var(--joy-bg)) left/4px 100% no-repeat,var(--card)}.lesson.next{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.lesson.final{background:var(--soft);grid-column:1/-1}.soon{background:var(--card);border:1px dashed var(--line);border-radius:12px;margin-top:18px;padding:6px 20px 18px}.crumb{margin:0 0 10px;font-size:14px}.lwords{gap:6px;display:grid}.lword{background:var(--card);border:1px solid var(--line);border-radius:10px;grid-template-columns:minmax(0,1fr);gap:3px;padding:10px 14px;display:grid}.lword .w{font-size:21px}.lword .tr{color:var(--ink);font-size:16px;font-weight:500}.lword .tr:before{content:"= ";color:var(--muted)}.lword>*{grid-column:1}.lword .sub{font:400 13px var(--f-mono);color:var(--muted)}#quiz{margin-top:14px}.qcard{background:var(--card);border:1px solid var(--line);border-radius:14px;gap:14px;padding:18px;display:grid}.qhead{justify-content:space-between;display:flex}.qtrack{background:var(--soft);border-radius:3px;height:6px;margin-top:-8px;overflow:hidden}.qtrack i{background:var(--joy);height:100%;display:block}.qprompt{margin:0;font-size:19px;line-height:1.4}.qprompt b{font-family:var(--f-display);font-size:22px;font-weight:500}.qopts{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;display:grid}.qopt{font:500 17px/1.3 var(--f-body);text-align:left;border:1px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer;border-radius:10px;padding:13px 14px}.qopt[lang=de]{font-family:var(--f-display);font-size:19px}.qopt:hover:not(:disabled){border-color:var(--ink)}.qopt:disabled{cursor:default}.qopt.right,.qtype input.right{border-color:var(--joy);background:var(--joy-bg);box-shadow:0 0 0 2px var(--joy)}.qopt.wrong,.qtype input.wrong{border-color:var(--die);box-shadow:0 0 0 2px var(--die)}.qtype{flex-wrap:wrap;gap:8px;display:flex}.qtype input{font:500 19px/1.2 var(--f-display);border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:10px;flex:240px;padding:11px 13px}.qfb p{margin:0 0 8px}.qfb .ok{color:var(--joy-ink);font-weight:600}.qfb .bad{color:var(--die);font-weight:600}.qresult{text-align:center;justify-items:center}.qresult .row{justify-content:center}.qscore{font:700 54px/1 var(--f-display);font-variant-numeric:tabular-nums;margin:6px 0 0}.qscore small{font:500 15px var(--f-body);color:var(--muted);margin-top:6px;display:block}.qresult.pass{border-color:var(--joy)}.qwrong{text-align:left;font-family:var(--f-display);max-width:560px;font-size:16px}.lsec{background:var(--card);border:1px solid var(--line);border-radius:16px;gap:18px;margin-top:22px;padding:20px 22px 22px;display:grid}.lsec-head{align-items:center;gap:14px;display:flex}.lsec-head h2{margin:0;font-size:24px}.lsec-head .small{margin:4px 0 0}.step{width:38px;height:38px;font:700 18px/1 var(--f-display);background:var(--joy);color:#2f2a25;border-radius:50%;flex:none;place-items:center;display:grid}.lsec .lword{background:var(--paper)}.lsec .gsum{max-width:70ch;margin:0;font-size:17px;font-weight:500}.lsub{gap:10px;display:grid}.lsub h3{font:600 13px/1.3 var(--f-body);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:4px 0 0}.lsub h3 small{text-transform:none;letter-spacing:0;margin-left:6px;font-weight:400}.lsec .grules{gap:8px;max-width:72ch;margin:0;padding-left:20px;display:grid}.lsec .gex li{background:var(--paper)}.lmore{border-top:1px dashed var(--line);margin:0;padding-top:12px}.ltest{border:2px solid var(--joy);background:linear-gradient(var(--joy-bg),var(--joy-bg)) top/100% 6px no-repeat,var(--card)}.ltest p{margin:0}.lfacts{flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none;display:flex}.lfacts li{background:var(--paper);border:1px solid var(--line);color:var(--muted);border-radius:10px;padding:10px 14px;font-size:14px}.lfacts b{font:700 22px/1.1 var(--f-display);color:var(--ink);display:block}.btn.big{justify-self:start;padding:14px 22px;font-size:17px}@media (width<=560px){.lsec{padding:16px}.lsec-head h2{font-size:20px}.btn.big{justify-content:center;justify-self:stretch}}.lweek{margin-top:26px}.lweek h2{margin:0 0 10px;font-size:22px}.lweek h2 small{font:400 13px var(--f-body);color:var(--muted);margin-left:8px}.lesson.wtest{border-style:dashed;border-color:var(--joy-ink);background:var(--soft)}.lesson.wtest .ln{color:var(--joy-ink)}.qcase{font:600 11px/1.6 var(--f-body);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);background:var(--soft);border-radius:6px;margin-bottom:6px;padding:1px 8px;display:inline-block}.qprompt small{color:var(--muted);font-size:14px}.qwords{text-align:left;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px;width:100%;margin:0;padding:0;list-style:none;display:grid}.qwords li{background:var(--paper);border:1px solid var(--line);font:500 17px/1.3 var(--f-display);border-radius:8px;padding:8px 10px}.qwrongs{text-align:left;width:100%}.qwrongs summary{cursor:pointer;font-weight:600}.resume{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.landing{grid-template-columns:minmax(0,1.25fr) minmax(300px,.9fr);align-items:start;gap:40px}.landing .genders{max-width:420px;margin-top:28px}.login-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:0 18px 40px #0000001f}.auth.inline,.auth.inline form{gap:12px;display:grid}.landing .cards .card,.cards div.card{cursor:default}.landing-note{margin-top:22px}@media (width<=760px){.landing{grid-template-columns:1fr}.login-card{order:-1}}.dash-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;display:flex}.dash-head h1{margin-bottom:4px}.dash-head .lead{margin-top:6px}.dash .stats{margin-top:20px}.stat .small a{color:inherit}.dash-today{background:var(--card);border:2px solid var(--joy);border-radius:16px;gap:10px;margin-top:22px;padding:20px 22px;display:grid}.dash-today h2{margin:0;font-size:26px}.dash-today .eyebrow,.dash-today p{margin:0}.dash-words{font:500 19px/1.6 var(--f-display)}.dash-words .art{margin-right:4px;font-weight:700}.dash-words .sep{color:var(--muted);margin:0 8px}.dash-next{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;display:grid}.dash-next .lesson{min-height:74px}.more-l{background:0 0;border-style:dashed}.dash-practice .card{border-width:1px}.week7{background:var(--card);border:1px solid var(--line);border-radius:12px;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;max-width:520px;padding:14px;display:grid}.bar7{justify-items:center;gap:6px;display:grid}.bar7 .b{background:var(--soft);border-radius:8px;align-items:flex-end;width:100%;max-width:34px;height:80px;display:flex;overflow:hidden}.bar7 .b i{background:color-mix(in srgb,var(--joy) 55%,var(--soft));border-radius:8px;width:100%;display:block}.bar7.full .b i{background:var(--joy)}.bar7 .d{color:var(--muted);font-size:12px}.bar7.is-today .d{color:var(--ink);font-weight:700}.bar7.is-today .b{box-shadow:0 0 0 2px var(--ink)}.lvl-tabs{scrollbar-width:none;flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}.lvl-tabs::-webkit-scrollbar{display:none}.lvl-tabs .chip{white-space:nowrap;flex:none}details.lweek{background:var(--card);border:1px solid var(--line);border-radius:14px;margin-top:14px;padding:4px 14px}details.lweek[open]{padding-bottom:14px}details.lweek summary{cursor:pointer;flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding:10px 0;list-style:none;display:flex}details.lweek summary::-webkit-details-marker{display:none}details.lweek summary:after{content:"+";font:400 20px/1 var(--f-mono);color:var(--muted);margin-left:auto}details.lweek[open] summary:after{content:"−"}details.lweek h2{margin:0;font-size:20px}.wsum{color:var(--muted);font-size:13px}details.lweek .lesson{background:var(--paper)}details.lweek .lesson.wtest{background:var(--soft)}.lweek:not(details){margin-top:26px}.dash-today{grid-template-columns:minmax(0,1fr)}.dash-today h2{overflow-wrap:anywhere}.dash-today .row{flex-wrap:wrap}@media (width<=560px){.lessons{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.lesson{padding:10px 11px}.lesson .ln{font-size:19px}.lesson .lt{font-size:13px;line-height:1.25}.lesson .lw{display:none}.lesson .ls{margin-top:2px;position:static}.lesson.final,.lesson.wtest{grid-column:1/-1}.lsum .btn{justify-content:center;width:100%}.dash-today{padding:16px}.dash-today h2{font-size:22px}.dash-today .btn{flex:auto;justify-content:center}.dash-words{font-size:17px}.dash .goal-ring svg{width:54px;height:54px}.stat{padding:12px 13px}.stat b{font-size:24px}.dash-next{grid-template-columns:1fr;gap:6px}.dash-next .lesson{min-height:0}.dash-next .lesson .lw{display:block}.dash-words .sep{margin:0 2px}}.dash-level{background:var(--card);border:1px solid var(--line);border-radius:14px;flex:220px;gap:6px;min-width:200px;max-width:300px;padding:12px 16px;display:grid}.dl-row{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.dl-row b{font:700 34px/1 var(--f-display)}.dl-pc{font:700 22px/1 var(--f-display);color:var(--joy-ink)}.dash-level .track{background:var(--soft);border-radius:4px;height:8px;overflow:hidden}.dash-level .track i{background:var(--joy);min-width:2px;height:100%;display:block}@media (width<=560px){.dash-level{flex-basis:100%;max-width:none}}.lsec .lwords{grid-template-columns:minmax(0,1fr);gap:6px}@media (width>=700px){.lsec .lword{grid-template-columns:minmax(200px,1.1fr) minmax(0,1fr) minmax(0,1.3fr);align-items:baseline;column-gap:18px}.lsec .lword>*{grid-column:auto}}.week7{margin-inline:auto}.say{color:var(--muted);filter:none;align-items:center;gap:4px;padding:4px 6px;line-height:1;display:inline-flex}.say:hover{color:var(--ink);background:var(--soft)}.ico-say{vertical-align:middle;flex:none;width:18px;height:18px}.ico-say path.w1,.ico-say path.w2{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round}.say.playing{color:var(--joy-ink);background:var(--joy-bg)}@media (prefers-reduced-motion:no-preference){.say.playing .w1{animation:.9s ease-in-out infinite wave}.say.playing .w2{animation:.9s ease-in-out .15s infinite wave}@keyframes wave{0%,to{opacity:1}50%{opacity:.2}}}.say{border:1.5px solid var(--line);background:var(--card);width:34px;height:34px;color:var(--ink);vertical-align:middle;border-radius:50%;flex:none;justify-content:center;align-items:center;gap:6px;margin:0 6px;padding:0;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.say:hover{background:var(--soft);border-color:var(--ink);color:var(--ink)}.say.slow{border-radius:999px;width:auto;padding:0 12px 0 8px}.say.slow span{font:600 12px/1 var(--f-body)}.say.playing{background:var(--joy);border-color:var(--joy);color:#2f2a25}.say.playing .ico-say{animation:none}.btn .ico-say{width:16px;height:16px}small .ico-say,.small .ico-say{vertical-align:-2px;width:13px;height:13px}@media (width<=560px){.say{width:38px;height:38px}.say .ico-say{width:20px;height:20px}}.say{background:var(--accent);width:40px;height:40px;color:var(--accent-ink);border:0;box-shadow:0 1px 3px #00000040}.say:hover{background:var(--accent);color:var(--accent-ink);filter:brightness(1.12);border:0}.say .ico-say{width:22px;height:22px;margin-left:3px}.say.slow{width:auto;height:40px;color:var(--ink);border:2px solid var(--accent);box-shadow:none;background:0 0;padding:0 14px 0 10px}.say.slow .ico-say{width:18px;height:18px;margin-left:0}.say.playing,.say.slow.playing{background:var(--joy);border-color:var(--joy);color:#2f2a25;filter:none}@media (width<=560px){.say{width:44px;height:44px}.say.slow{height:44px}.say .ico-say{width:24px;height:24px}}.say{margin:0 10px 0 0}.sent{grid-template-columns:auto minmax(0,1fr) auto}.sent .sp{flex-direction:column;grid-area:1/1/4;align-items:center;gap:6px;display:flex}.sent .de,.sent .sr,.sent .nt{grid-column:2}.sent .act{grid-column:3}@media (width<=560px){.sent{grid-template-columns:auto minmax(0,1fr)}.sent .act{flex-direction:row;grid-area:auto/1/auto/3;justify-content:flex-end;align-items:center}}.say{width:34px;height:34px}.say.slow{height:34px}@media (width<=560px){.say{width:38px;height:38px}.say.slow{height:38px}}body.focus .top,body.focus footer{display:none}.lstart{border:2px solid var(--accent);background:var(--card);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:18px 0 8px;padding:18px;display:flex}.lstart h2{font:700 22px/1.2 var(--f-display);margin:0 0 4px}.lstart p{max-width:52ch;color:var(--muted);margin:0}.learn{max-width:640px;margin:0 auto;padding:12px 0 40px}.lbar{z-index:5;background:var(--paper);align-items:center;gap:14px;padding:12px 0;display:flex;position:sticky;top:0}.lx{border:1px solid var(--line);width:40px;height:40px;color:var(--ink);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:18px;text-decoration:none;display:inline-flex}.lx:hover{border-color:var(--ink)}.lprog{flex:1;gap:6px;min-width:0;display:grid}.lprog .track{background:var(--soft);border-radius:4px;height:8px;overflow:hidden}.lprog .track i{background:var(--joy);width:0;height:100%;transition:width .3s;display:block}.lround{font:600 15px/1.4 var(--f-body);color:var(--muted);margin:10px 0 12px}.fcard{background:var(--card);border:1px solid var(--line);text-align:center;border-radius:18px;align-content:center;gap:14px;min-height:220px;padding:28px 22px;display:grid;box-shadow:0 6px 24px #0000001f}.fc-front{cursor:pointer}.fc-de{font:500 34px/1.25 var(--f-display);flex-wrap:wrap;justify-content:center;align-items:center;gap:4px;display:inline-flex}.fc-de .say{width:44px;height:44px}.fc-back{border-top:1px dashed var(--line);gap:8px;padding-top:14px;display:none}.fcard.open .fc-back{display:grid}.fc-tr{font:600 24px/1.3 var(--f-body);margin:0}.fc-pos,.fc-forms{margin:0}.fc-forms{font:400 15px/1.5 var(--f-mono);color:var(--muted)}.gcard{text-align:left;align-content:start}.gcard h3{font:700 24px/1.25 var(--f-display);margin:0}.gcard .eyebrow{margin:0}.fc-text{margin:0;font-size:18px;line-height:1.5}.fc-rule{font:500 22px/1.45 var(--f-body);margin:0}.gcard .gex,.gcard .grules{margin:0}.lact{justify-content:center;margin-top:18px;display:flex}.lcheck{margin-top:10px}.lback{margin:14px 0 8px;font-weight:600}.qfb .fcard{min-height:0;box-shadow:none;margin-bottom:12px;padding:18px}.qfb .fc-de{font-size:26px}@media (width<=560px){.fcard{min-height:200px;padding:22px 16px}.fc-de{font-size:28px}.fc-rule{font-size:19px}.lstart .btn{justify-content:center;width:100%}}.lact [hidden]{display:none!important}.ulist{gap:8px;margin-top:10px;display:grid}.ucard{background:var(--card);border:1px solid var(--line);border-radius:12px}.ucard[open]{border-color:var(--ink)}.urow{cursor:pointer;grid-template-columns:minmax(0,2.2fr) repeat(4,minmax(0,1fr)) 64px;align-items:center;gap:12px;padding:12px 14px;list-style:none;display:grid}.urow::-webkit-details-marker{display:none}.u-mail{overflow-wrap:anywhere;gap:2px;min-width:0;font-weight:600;display:grid}.u-cell{gap:2px;display:grid}.u-cell b{font:600 16px/1.2 var(--f-body)}.spark{align-items:flex-end;gap:3px;height:28px;display:flex}.spark i{background:var(--joy);border-radius:2px;flex:1}.spark i.z{background:var(--line)}.ubody{border-top:1px solid var(--line);gap:10px;padding:4px 14px 14px;display:grid}.ubody h4{font:600 14px/1.3 var(--f-body);margin:6px 0 0}.ulevels{gap:8px;margin-top:10px;display:grid}.u30{grid-template-columns:repeat(30,1fr);gap:3px;max-width:520px;display:grid}.u30 i{aspect-ratio:1;background:var(--soft);border-radius:3px}.u30 i.l1{background:color-mix(in srgb,var(--joy) 35%,var(--soft))}.u30 i.l2{background:color-mix(in srgb,var(--joy) 65%,var(--soft))}.u30 i.l3{background:var(--joy)}.urecent{gap:4px;margin:0;padding:0;list-style:none;display:grid}.urecent li{border-bottom:1px dashed var(--line);justify-content:space-between;gap:10px;padding:4px 0;display:flex}@media (width<=760px){.urow{grid-template-columns:repeat(2,minmax(0,1fr))}.u-mail{grid-column:1/-1}.spark{grid-column:1/-1;height:22px}}.btn.wait{opacity:.5;cursor:wait;position:relative}.btn.wait:after{content:"";background:currentColor;border-radius:50%;width:8px;height:8px;margin-left:8px;animation:1s ease-in-out infinite waitdot;display:inline-block}@keyframes waitdot{0%,to{opacity:.2}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.btn.wait:after{animation:none}}.welcome{grid-template-columns:minmax(0,1fr) minmax(0,400px);align-items:end;gap:32px;min-height:calc(100vh - 190px);padding:40px 0 24px;display:grid}.welcome-text h1{font:700 clamp(44px,7vw,84px)/1 var(--f-display);color:#fff;text-shadow:0 2px 18px #000000b3;margin:0 0 12px}.welcome-text .lead{color:#f1f4f8;text-shadow:0 1px 10px #000c;background:#0a101a73;border-radius:12px;max-width:34ch;padding:10px 14px;font-size:19px;display:inline-block}.welcome .login-card{-webkit-backdrop-filter:blur(8px);background:#131a23e0;border-radius:16px;box-shadow:0 10px 40px #00000073}@media (width<=760px){.welcome{grid-template-columns:1fr;align-items:start;gap:18px;min-height:0;padding-top:24px}.welcome-text{padding-top:34vh}.welcome-text h1{font-size:46px}}#jezik:not(:target),#jezik:target+#predmeti{display:none}.pick{padding:18px 0 40px}.pick-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin-top:18px;display:grid}.pick-card{border:1px solid var(--line);background:var(--card);min-height:120px;color:var(--ink);border-radius:16px;align-content:start;gap:6px;padding:20px;text-decoration:none;display:grid;position:relative}.pick-card b{font:700 22px/1.2 var(--f-display)}.pick-card span{font:500 16px/1.3 var(--f-display);color:var(--muted)}.pick-card em{color:var(--muted);font-size:14px;font-style:normal}a.pick-card{border:2px solid var(--accent);box-shadow:0 4px 18px #0000001f}a.pick-card:hover{transition:transform .15s;transform:translateY(-2px)}a.pick-card:after{content:"→";color:var(--accent);font-size:22px;position:absolute;top:18px;right:18px}.pick-card.soon{opacity:.6;border-style:dashed}.pick-card.soon em{text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:600}.auth.inline .x{display:none}@media (width<=760px){.welcome .login-card{order:0}.welcome-text{padding-top:30vh}}a.pick-card{padding-right:44px}.brand .logo{border-radius:50%;flex:none;width:36px;height:36px;box-shadow:0 0 0 1px #0000002e}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.top .nav a.active{color:var(--ink);background:var(--soft)}.top .acct{margin-left:4px}.loading{color:var(--muted);align-items:center;gap:10px;padding:48px 0;display:flex}.loading:before{content:"";background:currentColor;border-radius:50%;width:10px;height:10px;animation:1s ease-in-out infinite waitdot}.error-box{background:var(--card);border:1px solid var(--die);border-radius:12px;margin:18px 0;padding:16px 18px}.error-box p{margin:0 0 10px}.lesson.locked{opacity:.55;cursor:not-allowed}.lesson.locked .ls:before{content:"🔒 ";filter:grayscale()}button.lesson{font:inherit;text-align:left;color:inherit;background:var(--card);border:1px solid var(--line);cursor:pointer}button.lesson:disabled{cursor:not-allowed}.status-badge{font:600 12px/1 var(--f-body);border:1px solid var(--line);color:var(--muted);white-space:nowrap;border-radius:999px;padding:4px 8px}.status-badge.passed{color:var(--joy-ink);background:var(--joy-bg);border-color:#0000}.status-badge.unlocked{color:var(--ink);border-color:var(--ink)}.level-block{margin-top:28px}.level-block>h2{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.week-row{gap:8px;margin:16px 0;display:grid}.week-row h3{align-items:center;gap:10px;margin:8px 0 0;display:flex}.course-actions{flex-wrap:wrap;gap:8px;margin:18px 0;display:flex}.qbody{gap:4px;display:grid}.qnext{justify-content:flex-end;margin-top:12px;display:flex}.unlocked-list{flex-wrap:wrap;gap:6px;padding:0;list-style:none;display:flex}.unlocked-list li{background:var(--joy-bg);color:var(--joy-ink);border-radius:999px;padding:5px 10px;font-size:14px;font-weight:600}.wfilters{flex-wrap:wrap;align-items:center;gap:8px;margin:18px 0 8px;display:flex}.wcount{margin:6px 0 10px}.grades{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:100%;display:grid}.grades .btn{justify-content:center}@media (width<=480px){.grades{grid-template-columns:repeat(2,minmax(0,1fr))}}.qr{justify-items:start;gap:10px;display:grid}.qr img{width:200px;height:200px;image-rendering:pixelated;background:#fff;border-radius:8px;padding:8px}.secret{font:500 14px/1.4 var(--f-mono);word-break:break-all;background:var(--soft);border-radius:6px;padding:6px 8px}.set .row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.set label.fld2{gap:4px;display:grid}.set input[type=password],.set input[type=text],.set input[type=email]{font:inherit;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:8px;padding:10px 12px;font-size:16px}.msg{min-height:1.2em;color:var(--die);margin:0;font-size:14px}.msg.ok{color:var(--ok)}.admin-table td{vertical-align:middle}.admin-table .act-cell .btn{padding:6px 10px;font-size:13px}body.login-page{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#0d1420 url(/login/assets/login_wide-BM1PaJlR.webp) top/cover no-repeat fixed;min-height:100vh}@media (width<=760px),(orientation:portrait){body.login-page{background-image:url(/login/assets/login_tall-DL4ooyB2.webp);background-position:top;background-attachment:scroll}}body.login-page .top{-webkit-backdrop-filter:blur(6px);background:#0a101a8c;border-bottom-color:#ffffff1f}body.login-page .top .brand{color:#fff}body.login-page main{padding-block:0 32px}body.login-page .login-card{--paper:#131a23;--card:#1a232e;--ink:#e3e8ef;--muted:#9ba7b6;--line:#2b3644;--soft:#222c38;--accent:#e3e8ef;--accent-ink:#131a23;--die:#f0a29b;--ok:#ebc06e;color:var(--ink)}body.login-page .login-card h2{margin:0 0 4px}body.login-page .auth.inline form{gap:12px;display:grid}
