@font-face{font-family:Libre Caslon Display;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/libre-caslon-display-latin-ext-400-normal-CUYASYSA.woff2)format("woff2"),url(/assets/libre-caslon-display-latin-ext-400-normal-xXeWa_lF.woff)format("woff");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:Libre Caslon Display;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/libre-caslon-display-latin-400-normal-n_DgBRfq.woff2)format("woff2"),url(/assets/libre-caslon-display-latin-400-normal-BbfEE5V2.woff)format("woff");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}@font-face{font-family:Newsreader;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/newsreader-vietnamese-400-normal-DdKr49mV.woff2)format("woff2"),url(/assets/newsreader-vietnamese-400-normal-BekUZro8.woff)format("woff");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:Newsreader;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/newsreader-latin-ext-400-normal-svq1FPys.woff2)format("woff2"),url(/assets/newsreader-latin-ext-400-normal-DYA1XoQK.woff)format("woff");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:Newsreader;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/newsreader-latin-400-normal-BFBkh4jY.woff2)format("woff2"),url(/assets/newsreader-latin-400-normal-gRTjlS2D.woff)format("woff");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}@font-face{font-family:Newsreader;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/newsreader-vietnamese-500-normal-CL6a8tp2.woff2)format("woff2"),url(/assets/newsreader-vietnamese-500-normal-BEAbKU8A.woff)format("woff");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:Newsreader;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/newsreader-latin-ext-500-normal-BNHmvKvI.woff2)format("woff2"),url(/assets/newsreader-latin-ext-500-normal-CZruMFou.woff)format("woff");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:Newsreader;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/newsreader-latin-500-normal-B66TYsaK.woff2)format("woff2"),url(/assets/newsreader-latin-500-normal-DFwuUcdu.woff)format("woff");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}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff");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}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff");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}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-V-xxqcpd.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-9HEixskS.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-600-normal-CTOM6hUh.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-600-normal-fLZuRloM.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-vietnamese-600-normal-D2EvbN8M.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-600-normal-iLQfcSjf.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-ext-600-normal-D38SheWl.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-600-normal-DmB0ttJJ.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff)format("woff");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{--font-display:"Libre Caslon Display", Georgia, "Times New Roman", serif;--font-body:"Newsreader", Georgia, "Times New Roman", serif;--font-mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--atelier-terracotta:#cc5e3c;--atelier-saffron:#e0a23b;--atelier-olive:#6e7049;--atelier-petrol:#233b45;--atelier-clay:#a4543b;--atelier-ink:#2b2620;--atelier-muted:#6f665a;--atelier-cream:#fbf7ee;--atelier-paper:#f4eee1;--atelier-sand:#e6dbc4;--atelier-border:#e2d6bf;--atelier-border-paper:#d8ccb4;--atelier-border-dark:#3a5560;--atelier-on-dark:#f4eee1;--atelier-on-dark-muted:#afc0c5;--color-primary:var(--atelier-terracotta);--color-primary-hover:var(--atelier-clay);--color-highlight:var(--atelier-saffron);--color-secondary:var(--atelier-olive);--color-ground-dark:var(--atelier-petrol);--text-heading:var(--atelier-ink);--text-body:#3f3a33;--text-muted:var(--atelier-muted);--text-on-dark:var(--atelier-on-dark);--text-on-dark-muted:var(--atelier-on-dark-muted);--surface-page:var(--atelier-paper);--surface-card:var(--atelier-cream);--surface-white:#fff;--surface-sand:var(--atelier-sand);--border-hairline:var(--atelier-border);--border-dark:var(--atelier-border-dark);--chart-1:var(--atelier-terracotta);--chart-2:var(--atelier-petrol);--chart-3:var(--atelier-olive);--chart-4:var(--atelier-saffron);--chart-5:var(--atelier-clay);--text-display-size:92px;--text-display-lh:.92;--text-h1-size:60px;--text-h1-lh:1;--text-h2-size:40px;--text-h2-lh:1.05;--text-h3-size:28px;--text-h3-lh:1.15;--text-lead-size:22px;--text-lead-lh:1.5;--text-body-size:17px;--text-body-lh:1.65;--text-caption-size:14px;--text-caption-lh:1.5;--text-label-size:12px;--text-label-lh:1;--label-tracking:.16em;--label-transform:uppercase;--weight-mono-regular:400;--weight-mono-medium:500;--weight-mono-semibold:600;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--radius-sm:8px;--radius-card:12px;--radius-lg:16px;--radius-pill:999px;--border-width:1px;--shadow-card:0 1px 3px #2b262014;--shadow-raised:0 2px 8px #2b26201a;--poyma-motion:.15s ease;--poyma-focus-ring:2px;--poyma-sign-in-width:340px;--poyma-measure:680px;--poyma-field-label-size:13px;--poyma-layer-soft:#e8d9b5;--poyma-layer-hard:var(--atelier-olive);--poyma-layer-eroded:var(--atelier-terracotta);--poyma-layer-height:14px;--poyma-olive-text:#4f5133;--poyma-terracotta-text:#8a4530;--poyma-mist:#dce6e8;--poyma-moss:#e1e3cc;--poyma-moss-text:#454729;--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{margin:0}body{background:var(--surface-page);color:var(--text-body);font-family:var(--font-body);font-size:var(--text-body-size);line-height:var(--text-body-lh);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}button,input{font:inherit;color:inherit}a{color:var(--color-primary)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}a:focus-visible,button:focus-visible,label>span:focus-within{outline:var(--poyma-focus-ring) solid var(--color-primary);outline-offset:var(--poyma-focus-ring)}.kicker,.top nav a,.stats dt,.answered dt,.next-note .label,.unread,.lessons .number{font-family:var(--font-mono);font-weight:var(--weight-mono-medium);font-size:var(--text-label-size);line-height:var(--text-label-lh);letter-spacing:var(--label-tracking);text-transform:var(--label-transform);color:var(--text-muted)}.page{min-height:100dvh}.top{align-items:baseline;gap:var(--space-3) var(--space-5);max-width:calc(var(--poyma-measure) + 2 * var(--space-5));padding:max(var(--space-4), env(safe-area-inset-top)) var(--space-5) var(--space-3);flex-wrap:wrap;margin:0 auto;display:flex}.wordmark,.sign-in h1{font-family:var(--font-display);color:var(--text-heading);font-weight:400;text-decoration:none}.wordmark{font-size:var(--text-h3-size);line-height:var(--text-h3-lh)}.top nav{gap:var(--space-4);margin-right:auto;display:flex}.top nav a{padding:var(--space-2) 0;border-bottom:var(--border-width) solid transparent;transition:color var(--poyma-motion), border-color var(--poyma-motion);text-decoration:none}.top nav a[aria-current=page]{color:var(--text-heading);border-bottom-color:var(--color-primary)}.sign-out{padding:var(--space-2) 0;color:var(--text-muted);cursor:pointer;background:0 0;border:none}.sign-out:disabled{opacity:.6}.top [role=alert]{color:var(--color-primary-hover);flex-basis:100%;margin:0}main{max-width:calc(var(--poyma-measure) + 2 * var(--space-5));padding:var(--space-4) var(--space-5) var(--space-8);margin:0 auto}main h1{margin:var(--space-2) 0 var(--space-5);font-family:var(--font-display);font-weight:400;font-size:var(--text-h2-size);line-height:var(--text-h2-lh);color:var(--text-heading)}main h2,main h3{font-family:var(--font-display);color:var(--text-heading);font-weight:400}main h2{margin:var(--space-6) 0 var(--space-3);font-size:var(--text-h3-size);line-height:var(--text-h3-lh)}main h3{margin:var(--space-5) 0 var(--space-2);font-size:var(--text-lead-size);line-height:var(--text-lead-lh)}.note{color:var(--text-muted)}main>[role=alert]{color:var(--color-primary-hover)}.lesson .kicker{margin:0}.lesson .body{color:var(--text-body)}.lesson .body table{border-collapse:collapse;width:100%;font-size:var(--text-caption-size)}.lesson .body th,.lesson .body td{padding:var(--space-2);border-bottom:var(--border-width) solid var(--border-hairline);text-align:left}.lesson .body pre,.lesson .body code{font-family:var(--font-mono);font-size:var(--text-caption-size)}.lesson .body pre{padding:var(--space-3);background:var(--surface-card);border-radius:var(--radius-sm);overflow-x:auto}.lesson .body blockquote{padding-left:var(--space-4);border-left:var(--border-width) solid var(--color-secondary);color:var(--text-muted);margin:0}.quiz-me{margin:var(--space-6) 0}.button{border-radius:var(--radius-card);background:var(--color-primary);color:var(--surface-card);font-family:var(--font-body);transition:background var(--poyma-motion);padding:12px 26px;font-size:16px;font-weight:500;line-height:1;text-decoration:none;display:inline-block}.button:hover{background:var(--color-primary-hover)}.button.secondary{margin-top:var(--space-6);color:var(--text-heading);border:var(--border-width) solid var(--atelier-border-paper);background:0 0}.button.secondary:hover{background:var(--surface-card)}.hint{margin:var(--space-3) 0 0;font-size:var(--text-caption-size);line-height:var(--text-caption-lh);color:var(--text-muted)}.answered h2{margin-top:var(--space-7)}.question{margin:var(--space-4) 0;background:var(--surface-white);border:var(--border-width) solid var(--border-hairline);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:20px 22px}.question .kicker{color:var(--color-secondary);margin:0}.question h3{margin-top:var(--space-2)}.question dl{margin:0}.question dt{margin-top:var(--space-4)}.question dd{margin:var(--space-1) 0 0}.question .answer{font-style:italic}.question .score{font-family:var(--font-mono);font-weight:var(--weight-mono-semibold);color:var(--text-heading)}.topic{margin:var(--space-5) 0 var(--space-7)}.topic header{align-items:baseline;gap:var(--space-3);flex-wrap:wrap;display:flex}.topic header h2,.progress .topic h2{margin:0}.why{margin:var(--space-2) 0 0;color:var(--text-muted)}.next-note{margin:var(--space-4) 0}.lessons{margin:var(--space-4) 0 0;padding:0;list-style:none}.lessons li{align-items:baseline;gap:0 var(--space-3);padding:var(--space-3) 0;border-top:var(--border-width) solid var(--border-hairline);flex-wrap:wrap;display:flex}.lessons a{color:var(--text-heading);text-decoration:none}.lessons a:hover{color:var(--color-primary)}.lessons .summary{font-size:var(--text-caption-size);line-height:var(--text-caption-lh);color:var(--text-muted);flex-basis:100%}.unread{color:var(--color-primary)}.ground{margin:var(--space-4) 0}.layers{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.layer{height:var(--poyma-layer-height);border-radius:var(--radius-sm)}.layer.soft{background:var(--poyma-layer-soft)}.layer.hard{background:var(--poyma-layer-hard)}.layer.eroded{background:repeating-linear-gradient(-45deg, var(--poyma-layer-eroded) 0 6px, transparent 6px 12px);border:var(--border-width) solid var(--poyma-layer-eroded)}.ground figcaption{margin-top:var(--space-2);font-family:var(--font-mono);font-size:var(--text-label-size);color:var(--text-muted)}.headline{font-family:var(--font-display);font-size:var(--text-lead-size);line-height:var(--text-lead-lh);color:var(--text-heading)}.stats{gap:var(--space-7);margin:var(--space-5) 0;display:flex}.stats dd{margin:var(--space-2) 0 0;font-family:var(--font-display);font-size:var(--text-h3-size);line-height:var(--text-h3-lh);color:var(--text-heading)}.ember{--text-muted:var(--text-on-dark-muted);background:var(--color-ground-dark);color:var(--text-on-dark)}body:has(.ember){background:var(--color-ground-dark)}.sign-in{min-height:100dvh;padding:var(--space-5);place-items:center;display:grid}.sign-in form{width:min(var(--poyma-sign-in-width), 100%);gap:var(--space-4);flex-direction:column;display:flex}.sign-in h1{margin:0 0 var(--space-4);font-size:var(--text-h1-size);line-height:var(--text-h1-lh);color:var(--text-on-dark)}.sign-in button:disabled{opacity:.6}.sign-in .asks{margin:0}.sign-in [role=alert]{color:var(--color-highlight);margin:0}@media (width<=639px){.top nav{flex-basis:100%;order:3}.sign-out{margin-left:auto}main h1{font-size:var(--text-h3-size);line-height:var(--text-h3-lh)}.stats{gap:var(--space-5)}}
