@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-cyrillic-ext-opsz-normal-C5tfwALZ.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-cyrillic-opsz-normal-DgmypKXX.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-greek-ext-opsz-normal-DGm64vGR.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-greek-opsz-normal-DFglUmAd.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-vietnamese-opsz-normal-Gqw5JQlq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-latin-ext-opsz-normal-STiTPs0F.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-latin-opsz-normal-BHZsWIlc.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#1b2440;--paper:#fffef9;--desk:#f4f1e8;--grid:#3c5aa01f;--rule:#1b244040;--margin:#c0392b;--muted:#5b6072;font-optical-sizing:auto;font-family:Literata Variable,Georgia,Times New Roman,serif;font-size:17px;line-height:1.6}*{box-sizing:border-box}body{color:var(--ink);background-color:var(--desk);background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);background-size:24px 24px;margin:0}#root{max-width:46rem;margin:0 auto;padding:0 16px 4rem}header{justify-content:space-between;align-items:center;padding:24px 0 8px;display:flex}header a{color:inherit;text-decoration:none}h1{letter-spacing:-.01em;border-bottom:2px solid var(--margin);margin:0;font-size:1.9rem;font-weight:600}h2{margin:0 0 12px;font-size:1.2rem;font-weight:600}a{color:var(--ink);text-underline-offset:3px}.sheet{background:var(--paper);border:1px solid var(--ink);box-shadow:0 1px 0 var(--rule), 0 6px 16px -8px #1b24404d;border-radius:3px;margin:20px 0;padding:22px 24px}input,select,textarea,button{font:inherit;color:inherit}input,select,textarea{background:var(--paper);border:1px solid var(--ink);border-radius:3px;width:100%;padding:8px 10px}textarea{resize:vertical}label{letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px;font-size:.75rem;font-weight:600;display:block}label>input,label>select,label>textarea{letter-spacing:normal;text-transform:none;margin-top:4px;font-size:1rem;font-weight:400}button{background:var(--paper);border:1px solid var(--ink);cursor:pointer;border-radius:3px;padding:6px 16px;transition:background-color .15s,color .15s}button.square{place-items:center;width:2.1rem;height:2.1rem;padding:0;display:inline-grid}.icon{display:block}.back{align-items:center;gap:6px;display:inline-flex}button:hover:not(:disabled),button.primary{background:var(--ink);color:var(--paper)}button.primary:hover:not(:disabled){background:var(--paper);color:var(--ink)}button:disabled{opacity:.35;cursor:not-allowed}:focus-visible{outline:2px solid var(--margin);outline-offset:2px}fieldset{border:0;margin:0;padding:0}fieldset:disabled{opacity:.6}.row{grid-template-columns:2fr 1fr;gap:16px;display:grid}.muted{color:var(--muted);font-weight:400}.hint{color:var(--muted);margin:0;font-size:.85rem}.error-text{border-left:5px solid var(--ink);margin:12px 0;padding-left:10px;font-weight:600}.summary{margin:8px 0 0;font-weight:700}.back{margin-top:12px}.issues{margin:6px 0;padding:0;font-size:.9rem;list-style:none}.tag{border:1px solid var(--ink);letter-spacing:.06em;text-transform:uppercase;border-radius:2px;padding:0 6px;font-size:.7rem;font-weight:700;display:inline-block}.tag.error{background:var(--ink);color:var(--paper)}.invalid{border-width:4px;padding:6px 8px}.lessons{margin:0;padding:0;list-style:none}.lessons li{border-bottom:1px solid var(--rule);align-items:baseline;gap:12px;padding:10px 0;display:flex}.lessons a{flex:1}.lesson-number{font-weight:700}.number{background:var(--ink);min-width:2rem;height:2rem;color:var(--paper);border-radius:50%;flex:none;place-items:center;font-weight:600;display:inline-grid}.objective{grid-template-columns:auto 1fr auto;align-items:start;gap:8px;margin-bottom:8px;display:grid}.cards{gap:16px;margin:0 0 16px;padding:0;list-style:none;display:grid}.card{border:1px solid var(--rule);border-left:3px solid var(--margin);border-radius:3px;gap:10px;padding:14px 16px;display:grid}.card.has-error{border-color:var(--ink);border-left-width:6px}.card-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.card-head select{width:auto}.spacer{flex:1}.check{letter-spacing:normal;text-transform:none;align-items:center;gap:10px;margin:16px 0 0;font-size:1rem;font-weight:400;display:flex}.check input{width:1.3rem;height:1.3rem;accent-color:var(--ink);margin:0}.actions{background:var(--paper);border-top:1px solid var(--ink);align-items:center;gap:10px;margin:0 -16px;padding:12px 16px;display:flex;position:sticky;bottom:0}.status{flex:1}.status .error-text{margin:0}.progress{margin-top:16px}.progress .bar{border:1px solid var(--ink);background:repeating-linear-gradient(45deg, var(--ink) 0 10px, var(--paper) 10px 20px);background-size:28px 28px;height:14px;animation:1s linear infinite slide}@keyframes slide{to{background-position:28px 0}}@media (prefers-reduced-motion:reduce){.progress .bar{animation:none}}.login{max-width:24rem;margin:3rem auto}@media (width<=34rem){.row{grid-template-columns:1fr;gap:0}.objective{grid-template-columns:auto 1fr}.objective button{grid-column:2;justify-self:start}.actions{flex-wrap:wrap}}.note summary{cursor:pointer;color:var(--muted,inherit)}.row-actions{flex-wrap:wrap;gap:10px;margin-top:10px;display:flex}
