@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:600;src:url(../media/archivo-vietnamese-600-normal.22t-lethpxspk.woff2)format("woff2"),url(../media/archivo-vietnamese-600-normal.2lw79ud0zuiey.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:Archivo;font-style:normal;font-display:swap;font-weight:600;src:url(../media/archivo-latin-ext-600-normal.2f-md34ksgtiy.woff2)format("woff2"),url(../media/archivo-latin-ext-600-normal.3axuw28vfezf3.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:Archivo;font-style:normal;font-display:swap;font-weight:600;src:url(../media/archivo-latin-600-normal.2w7w9yha17-bx.woff2)format("woff2"),url(../media/archivo-latin-600-normal.28ezk_5ik19tt.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:Archivo;font-style:normal;font-display:swap;font-weight:700;src:url(../media/archivo-vietnamese-700-normal.3e4_pjtfifv50.woff2)format("woff2"),url(../media/archivo-vietnamese-700-normal.2ungjxobuv9zl.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:Archivo;font-style:normal;font-display:swap;font-weight:700;src:url(../media/archivo-latin-ext-700-normal.3nlgn8-qtd8_p.woff2)format("woff2"),url(../media/archivo-latin-ext-700-normal.0yj6pw3x1bwrn.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:Archivo;font-style:normal;font-display:swap;font-weight:700;src:url(../media/archivo-latin-700-normal.3jbg8rxzs6alt.woff2)format("woff2"),url(../media/archivo-latin-700-normal.1r3_p6quufg73.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 Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-sans-cyrillic-ext-400-normal.0sqs6uof-0amz.woff2)format("woff2"),url(../media/ibm-plex-sans-cyrillic-ext-400-normal.1n25945oofmoi.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 Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-sans-cyrillic-400-normal.1nbavbgzpe520.woff2)format("woff2"),url(../media/ibm-plex-sans-cyrillic-400-normal.13meln3u2wrw1.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-sans-greek-400-normal.13urx6ctg50nq.woff2)format("woff2"),url(../media/ibm-plex-sans-greek-400-normal.3jezoma1zzezb.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-sans-vietnamese-400-normal.0ai7gdju0gby9.woff2)format("woff2"),url(../media/ibm-plex-sans-vietnamese-400-normal.2u9cx6ke8pzx4.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 Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-sans-latin-ext-400-normal.0ceeqphcbp8x9.woff2)format("woff2"),url(../media/ibm-plex-sans-latin-ext-400-normal.0rj0k8-86v7v_.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 Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-sans-latin-400-normal.1-h52z97c7bce.woff2)format("woff2"),url(../media/ibm-plex-sans-latin-400-normal.0fuh4fyjfo9ap.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 Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-sans-cyrillic-ext-500-normal.44593i8-29wbg.woff2)format("woff2"),url(../media/ibm-plex-sans-cyrillic-ext-500-normal.0jidoswe0j9qb.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 Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-sans-cyrillic-500-normal.112yeov4xlg05.woff2)format("woff2"),url(../media/ibm-plex-sans-cyrillic-500-normal.0ni4769h0x31g.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-sans-greek-500-normal.0ufg9694ueuse.woff2)format("woff2"),url(../media/ibm-plex-sans-greek-500-normal.1ts2y1qr3h2f8.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-sans-vietnamese-500-normal.012d1stzl51ip.woff2)format("woff2"),url(../media/ibm-plex-sans-vietnamese-500-normal.38v_v5lab-ej5.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 Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-sans-latin-ext-500-normal.2mcl7017j3tww.woff2)format("woff2"),url(../media/ibm-plex-sans-latin-ext-500-normal.18qmapxmuwhn3.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 Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-sans-latin-500-normal.2broe1i9movoa.woff2)format("woff2"),url(../media/ibm-plex-sans-latin-500-normal.0f8eq302mdpld.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 Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/ibm-plex-sans-cyrillic-ext-600-normal.16h6o2_j8rsce.woff2)format("woff2"),url(../media/ibm-plex-sans-cyrillic-ext-600-normal.3juwc1-_leybj.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 Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/ibm-plex-sans-cyrillic-600-normal.2tlxqadn_cmsz.woff2)format("woff2"),url(../media/ibm-plex-sans-cyrillic-600-normal.3csci4y08h_ps.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/ibm-plex-sans-greek-600-normal.0h_04yfamc884.woff2)format("woff2"),url(../media/ibm-plex-sans-greek-600-normal.1fh4va1m5wx0j.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/ibm-plex-sans-vietnamese-600-normal.0f-wuky6h_rs9.woff2)format("woff2"),url(../media/ibm-plex-sans-vietnamese-600-normal.2_uiyrwt0npgh.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 Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/ibm-plex-sans-latin-ext-600-normal.1uvdyv9iryn4j.woff2)format("woff2"),url(../media/ibm-plex-sans-latin-ext-600-normal.01k4adpnb_n12.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 Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/ibm-plex-sans-latin-600-normal.11xxlm8n0_7w8.woff2)format("woff2"),url(../media/ibm-plex-sans-latin-600-normal.0o-mv26yr1hzk.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(../media/ibm-plex-mono-cyrillic-ext-400-normal.0_q8wa_t-7-c7.woff2)format("woff2"),url(../media/ibm-plex-mono-cyrillic-ext-400-normal.1-h66gx1kjeux.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(../media/ibm-plex-mono-cyrillic-400-normal.2dcg25_89g34d.woff2)format("woff2"),url(../media/ibm-plex-mono-cyrillic-400-normal.1r3eey-1tdqwh.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(../media/ibm-plex-mono-vietnamese-400-normal.40ek894ady0so.woff2)format("woff2"),url(../media/ibm-plex-mono-vietnamese-400-normal.0blsyrk14nago.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(../media/ibm-plex-mono-latin-ext-400-normal.1ih4rrmj883u6.woff2)format("woff2"),url(../media/ibm-plex-mono-latin-ext-400-normal.0hj8bqnym411c.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(../media/ibm-plex-mono-latin-400-normal.19gbeb610ur4n.woff2)format("woff2"),url(../media/ibm-plex-mono-latin-400-normal.3nj-glub930lh.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(../media/ibm-plex-mono-cyrillic-ext-500-normal.2tfs-ajhr_27q.woff2)format("woff2"),url(../media/ibm-plex-mono-cyrillic-ext-500-normal.29wincfdhpbow.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(../media/ibm-plex-mono-cyrillic-500-normal.30hm7mcic8nak.woff2)format("woff2"),url(../media/ibm-plex-mono-cyrillic-500-normal.1g2cl4geicio1.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(../media/ibm-plex-mono-vietnamese-500-normal.400h8-n7y356b.woff2)format("woff2"),url(../media/ibm-plex-mono-vietnamese-500-normal.2w9-mj8vy__-b.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(../media/ibm-plex-mono-latin-ext-500-normal.2yypdhrkbqnza.woff2)format("woff2"),url(../media/ibm-plex-mono-latin-ext-500-normal.3-fgi0nn_mag-.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(../media/ibm-plex-mono-latin-500-normal.25_05y-blbp24.woff2)format("woff2"),url(../media/ibm-plex-mono-latin-500-normal.20ixcot5hpnm-.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{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#fff;--paper-2:#f4f8fd;--paper-3:#eaf2fc;--ink:#0e1b2e;--ink-2:#47586f;--ink-3:#8395ab;--rule:#dde7f3;--rule-2:#ebf1f8;--blue:#1657d0;--blue-deep:#0e3e9e;--blue-soft:#e6eefd;--blue-ink:#fff;--amber:#8a5a12;--amber-soft:#fbf1de;--success:#127a4b;--success-soft:#e3f4ea;--error:#b42318;--error-soft:#fdecea;--font-display:"Archivo", "Helvetica Neue", Arial, sans-serif;--font-sans:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--shell:70rem;--gutter:clamp(20px, 5vw, 44px);--r:8px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.6}img{max-width:100%;height:auto}a{color:inherit}::selection{background:var(--blue-soft);color:var(--ink)}:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:3px}.skip{background:var(--blue);color:var(--blue-ink);z-index:20;font-family:var(--font-mono);padding:10px 16px;font-size:12px;position:absolute;top:0;left:-9999px}.skip:focus{top:8px;left:8px}.shell{max-width:var(--shell);padding-inline:var(--gutter);margin:0 auto}section{padding-block:clamp(58px,9vw,106px)}.band{border-top:1px solid var(--rule)}.band-tint{background:var(--paper-2);border-top-color:var(--rule-2)}.eyebrow{font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;color:var(--blue);margin:0 0 16px;font-size:11px;font-weight:500}h1,h2,h3{font-family:var(--font-display);text-wrap:balance;font-weight:600}h2.section-title{letter-spacing:-.022em;max-width:24ch;margin:0 0 14px;font-size:clamp(1.65rem,3.4vw,2.2rem);line-height:1.16}.section-lede{color:var(--ink-2);max-width:58ch;margin:0 0 40px;font-size:1.05rem}.masthead{justify-content:space-between;align-items:center;gap:20px;padding-block:20px;display:flex}.wordmark{align-items:center;gap:10px;text-decoration:none;display:flex}.wordmark .mark{border-radius:7px;flex:none;width:28px;height:28px;display:block}.wordmark .name{font-family:var(--font-display);letter-spacing:-.035em;font-size:1.35rem;font-weight:700;line-height:1}.masthead nav{align-items:center;gap:24px;font-size:14.5px;display:flex}.masthead nav a{color:var(--ink-2);border-bottom:1.5px solid #0000;padding-bottom:3px;text-decoration:none}.masthead nav a:hover{color:var(--blue);border-bottom-color:var(--blue)}@media (max-width:600px){.masthead nav{gap:16px;font-size:13px}.masthead nav .hide-sm{display:none}}.hero{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(34px,5vw,64px);padding-block:clamp(48px,8vw,92px) clamp(52px,8vw,96px);display:grid}@media (max-width:900px){.hero{grid-template-columns:1fr}}.hero h1{letter-spacing:-.04em;max-width:15ch;margin:0 0 20px;font-size:clamp(2.3rem,5.6vw,3.5rem);line-height:1.04}.hero .lede{color:var(--ink-2);max-width:52ch;margin:0 0 32px;font-size:clamp(1.02rem,1.7vw,1.16rem);line-height:1.6}.rubric-card{background:var(--paper);border:1px solid var(--rule);border-radius:12px;padding:22px 24px 24px;box-shadow:0 1px 2px #0e1b2e0a,0 12px 32px -12px #1657d02e}.rubric-card .head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:4px;display:flex}.rubric-card .head h3{letter-spacing:-.01em;margin:0;font-size:1rem}.rubric-card .chip{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--blue);background:var(--blue-soft);white-space:nowrap;border-radius:20px;padding:3px 8px;font-size:10px;font-weight:500}.rubric-card .sub{color:var(--ink-3);margin:0 0 18px;font-size:12.5px}.criterion{border-top:1px solid var(--rule-2);padding:11px 0}.criterion:first-of-type{border-top:none}.criterion .row{justify-content:space-between;align-items:baseline;gap:14px;display:flex}.criterion .label{color:var(--ink);font-size:14px}.criterion .val{font-family:var(--font-mono);color:var(--ink-3);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.levels{gap:4px;margin-top:8px;display:flex}.levels i{background:var(--rule);border-radius:2px;flex:1;height:7px;display:block}.levels i.on{background:var(--blue)}.levels i.low{background:var(--amber)}.rubric-card .foot{border-top:1px solid var(--rule-2);color:var(--ink-2);margin:16px 0 0;padding-top:14px;font-size:12.5px}.rubric-card .foot b{color:var(--ink);font-weight:600}.signup{max-width:34rem}.signup .row{flex-wrap:wrap;gap:10px;display:flex}.signup input[type=email]{min-width:0;font:inherit;color:var(--ink);background:var(--paper);border:1px solid var(--rule);border-radius:var(--r);flex:15rem;padding:13px 15px;font-size:15px}.signup input[type=email]::placeholder{color:var(--ink-3)}.signup input[type=email]:focus-visible{border-color:var(--blue);outline-offset:1px}.btn{font:inherit;font-family:var(--font-display);border:1px solid var(--blue);border-radius:var(--r);background:var(--blue);color:var(--blue-ink);cursor:pointer;white-space:nowrap;padding:13px 26px;font-size:15px;font-weight:600;transition:background-color .15s,border-color .15s}.btn:hover{background:var(--blue-deep);border-color:var(--blue-deep)}a.btn{text-decoration:none;display:inline-block}.btn[disabled]{opacity:.55;cursor:progress}.signup .fineprint{color:var(--ink-3);max-width:46ch;margin:12px 0 0;font-size:12.5px;line-height:1.5}.formnote{border-radius:var(--r);border:1px solid var(--rule);margin:14px 0 0;padding:11px 14px;font-size:14px}.formnote.ok{background:var(--blue-soft);border-color:var(--blue);color:var(--ink)}.formnote.bad{background:var(--amber-soft);border-color:var(--amber);color:var(--ink)}.three{grid-template-columns:repeat(auto-fit,minmax(248px,1fr));gap:20px;display:grid}.three>div{background:var(--paper);border:1px solid var(--rule);border-radius:var(--r);padding:24px 24px 26px}.three h3{letter-spacing:-.015em;margin:0 0 9px;font-size:1.1rem}.three p{color:var(--ink-2);margin:0;font-size:14.6px}.marker{gap:3px;margin-bottom:16px;display:flex}.marker i{background:var(--rule);border-radius:2px;width:14px;height:5px}.marker i.on{background:var(--blue)}.rule-label{font-family:var(--font-mono);letter-spacing:.13em;text-transform:uppercase;color:var(--blue);margin-bottom:10px;font-size:10.5px;font-weight:500;display:block}.certs{gap:4px;display:grid}.vendor{border-top:1px solid var(--rule);grid-template-columns:12.5rem 1fr;gap:6px 28px;padding:18px 0;display:grid}.vendor:first-child{border-top:none}.vendor h3{font-family:var(--font-mono);letter-spacing:.13em;text-transform:uppercase;color:var(--ink-3);margin:3px 0 0;font-size:11px;font-weight:500}.vendor ul{margin:0;padding:0;list-style:none}.vendor li{flex-wrap:wrap;align-items:baseline;gap:10px;padding:5px 0;font-size:15px;display:flex}.vendor li code{font-family:var(--font-mono);color:var(--blue);background:var(--blue-soft);border-radius:3px;padding:2px 7px;font-size:11.5px}@media (max-width:620px){.vendor{grid-template-columns:1fr;gap:8px}}.model{grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:20px;display:grid}.model>div{background:var(--paper);border:1px solid var(--rule);border-radius:var(--r);padding:26px 26px 28px}.model>div.lead{border-color:var(--blue);box-shadow:0 10px 30px -16px #1657d059}.model .tag{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;border-radius:20px;margin-bottom:14px;padding:4px 9px;font-size:10px;font-weight:500;display:inline-block}.model .tag.free{background:var(--blue);color:var(--blue-ink)}.model .tag.paid{background:var(--amber-soft);color:var(--amber)}.model h3{letter-spacing:-.015em;margin:0 0 10px;font-size:1.18rem}.model p{color:var(--ink-2);margin:0 0 10px;font-size:14.8px}.model p:last-child{margin-bottom:0}.method{background:var(--paper);border:1px solid var(--rule);border-left:3px solid var(--blue);border-radius:var(--r);max-width:64ch;padding:26px 28px}.method p{color:var(--ink-2);margin:0 0 12px}.method p:last-child{margin-bottom:0}.method strong{color:var(--ink);font-weight:600}.cta-band{background:var(--paper-3);border-top:1px solid var(--rule-2)}.site-footer{border-top:1px solid var(--rule);color:var(--ink-3);padding-block:38px 54px;font-size:13.5px}.site-footer .cols{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:22px 48px;display:flex}.site-footer a{color:var(--ink-2)}.site-footer .legal{max-width:40ch;line-height:1.6}.site-footer .meta{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:11px}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.page-head{padding-block:clamp(40px,6vw,68px) clamp(28px,4vw,44px)}.page-head h1{letter-spacing:-.032em;max-width:20ch;margin:0 0 16px;font-size:clamp(2rem,4.6vw,2.9rem);line-height:1.08}.page-head .lede{color:var(--ink-2);max-width:58ch;margin:0;font-size:clamp(1rem,1.6vw,1.12rem)}.crumbs{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:18px;font-size:11px;display:flex}.crumbs a{color:var(--blue);text-decoration:none}.crumbs a:hover{text-decoration:underline}.code-line{flex-wrap:wrap;align-items:center;gap:12px;margin:0;display:flex}.code-chip{font-family:var(--font-mono);color:var(--blue);background:var(--blue-soft);border-radius:4px;padding:4px 10px;font-size:12px;font-weight:500}.verified{color:var(--ink-3);font-size:13px}.notice{border-radius:var(--r);background:var(--amber-soft);border:1px solid var(--amber);color:var(--ink);max-width:60ch;margin:20px 0 0;padding:12px 16px;font-size:14.5px}.vendor-block{margin-bottom:40px}.vendor-block:last-child{margin-bottom:0}.vendor-heading{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin:0 0 14px;font-size:11px;font-weight:500}.cert-grid{grid-template-columns:repeat(auto-fill,minmax(258px,1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}.cert-card{background:var(--paper);border:1px solid var(--rule);border-radius:var(--r);flex-direction:column;gap:7px;height:100%;padding:18px 20px 20px;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:flex}.cert-card:hover{border-color:var(--blue);box-shadow:0 8px 24px -14px #1657d066}.cert-code{font-family:var(--font-mono);letter-spacing:.09em;color:var(--blue);font-size:11px;font-weight:500}.cert-name{font-family:var(--font-display);letter-spacing:-.015em;color:var(--ink);font-size:1.02rem;font-weight:600;line-height:1.25}.cert-meta{font-family:var(--font-mono);color:var(--ink-3);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:4px 14px;margin-top:auto;padding-top:8px;font-size:11px;display:flex}.more{margin:30px 0 0;font-size:15px}.more a{color:var(--blue);font-weight:500;text-decoration:none}.more a:hover{text-decoration:underline}.facts-list{border:1px solid var(--rule);border-radius:var(--r);background:var(--paper);max-width:46rem;margin:0;padding:0;overflow:hidden}.fact-row{border-top:1px solid var(--rule-2);grid-template-columns:14rem 1fr;gap:8px 24px;padding:13px 20px;display:grid}.fact-row:first-child{border-top:none}.fact-row dt{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin:0;padding-top:2px;font-size:11px}.fact-row dd{color:var(--ink);font-variant-numeric:tabular-nums;margin:0;font-size:15px}.fact-row dd.unpublished{color:var(--ink-3);font-style:italic}@media (max-width:620px){.fact-row{grid-template-columns:1fr;gap:4px}}.delivery{color:var(--ink-2);max-width:60ch;margin:18px 0 0;font-size:14.5px}.weights{max-width:46rem;margin:0;padding:0;list-style:none}.weights li{border-top:1px solid var(--rule-2);padding:13px 0}.weights li:first-child{border-top:none;padding-top:0}.weight-head{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:8px;display:flex}.weight-name{color:var(--ink);font-size:15px}.weight-val{font-family:var(--font-mono);color:var(--blue);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12.5px;font-weight:500}.weight-track{background:var(--rule);border-radius:4px;height:8px;overflow:hidden}.weight-bar{background:var(--blue);border-radius:4px;height:100%;display:block}.prose{max-width:68ch}.prose>*+*{margin-top:1.05em}.prose h2{letter-spacing:-.02em;margin-top:2.1em;margin-bottom:.1em;scroll-margin-top:24px;font-size:clamp(1.4rem,2.6vw,1.7rem);line-height:1.2}.prose h2:first-child{margin-top:0}.prose h3{letter-spacing:-.012em;margin-top:1.7em;margin-bottom:.1em;font-size:1.08rem;line-height:1.3}.prose p{color:var(--ink-2);font-size:16px;line-height:1.68}.prose strong{color:var(--ink);font-weight:600}.prose a{color:var(--blue);text-underline-offset:2px}.prose ul,.prose ol{color:var(--ink-2);margin-top:.8em;padding-left:1.15em}.prose li{margin-top:.4em;line-height:1.62}.prose li::marker{color:var(--ink-3)}.prose blockquote{border-left:3px solid var(--blue);color:var(--ink);margin:1.6em 0;padding:2px 0 2px 20px;font-size:16.5px}.prose blockquote p{color:var(--ink)}.aside{background:var(--blue-soft);border-radius:var(--r);margin:1.6em 0;padding:18px 20px}.aside .aside-label{font-family:var(--font-mono);letter-spacing:.13em;text-transform:uppercase;color:var(--blue);margin-bottom:8px;font-size:10px;font-weight:500;display:block}.aside p{color:var(--ink);margin:0;font-size:15px;line-height:1.6}.aside p+p{margin-top:.7em}.toc{flex-wrap:wrap;gap:8px 10px;margin:0 0 8px;padding:0;list-style:none;display:flex}.toc a{font-family:var(--font-mono);color:var(--ink-2);background:var(--paper-2);border:1px solid var(--rule);border-radius:20px;padding:5px 13px;font-size:11.5px;text-decoration:none;display:inline-block}.toc a:hover{color:var(--blue);border-color:var(--blue)}.stub{border:1px dashed var(--rule);border-radius:var(--r);max-width:60ch;color:var(--ink-2);padding:22px 24px;font-size:14.8px}.stub strong{color:var(--ink)}.objectives{border-left:2px solid var(--rule-2);margin:14px 0 4px;padding:0 0 0 2px;list-style:none}.objectives li{color:var(--ink-2);grid-template-columns:2.6rem 1fr;gap:10px;padding:6px 0 6px 16px;font-size:14.4px;line-height:1.5;display:grid}.obj-code{font-family:var(--font-mono);color:var(--ink-3);font-variant-numeric:tabular-nums;padding-top:2px;font-size:11.5px}@media (max-width:520px){.objectives li{grid-template-columns:1fr;gap:2px}}.study-blurb{color:var(--ink-2);font-size:14px;line-height:1.5}.study-links{margin:16px 0 0;font-size:14.5px}.study-links a{color:var(--blue);font-weight:500;text-decoration:none}.study-links a:hover{text-decoration:underline}.study-domain{max-width:48rem;margin-bottom:40px}.study-domain:last-child{margin-bottom:0}.study-domain-head{letter-spacing:-.015em;flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin:0 0 12px;font-size:1.15rem;display:flex}.study-domain-head .weight-val{margin-left:auto}.study-list{background:var(--paper);border:1px solid var(--rule);border-radius:var(--r);margin:0;padding:0;list-style:none;overflow:hidden}.study-list li{border-top:1px solid var(--rule-2)}.study-list li:first-child{border-top:none}.study-list a,.study-list li.unwritten{color:var(--ink);grid-template-columns:2.8rem 1fr auto;align-items:baseline;gap:12px;padding:13px 18px;text-decoration:none;display:grid}.study-list a:hover{background:var(--blue-soft)}.study-list a:hover .study-title{color:var(--blue)}.study-list li.unwritten{color:var(--ink-2)}.study-title{font-size:15px;line-height:1.45}.study-min{font-family:var(--font-mono);color:var(--ink-2);white-space:nowrap;font-size:11px}@media (max-width:520px){.study-list a,.study-list li.unwritten{grid-template-columns:2.4rem 1fr}.study-min{grid-column:2}}.objective{border-left:3px solid var(--blue);max-width:60ch;color:var(--ink);margin:22px 0 0;padding-left:14px;font-size:15.5px}.objective-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);margin-bottom:4px;font-size:10.5px;display:block}.tier{border-radius:var(--r);max-width:60ch;color:var(--ink);margin:20px 0 0;padding:11px 15px;font-size:14px;line-height:1.55}.tier a{color:var(--blue)}.tier-draft{background:var(--amber-soft);border:1px solid var(--amber)}.tier-verified{background:var(--success-soft);border:1px solid var(--success)}.lesson{max-width:70ch}.lesson.prose h2{font-size:1.35rem}.lesson code,.pq code,.callout code{font-family:var(--font-mono);background:var(--paper-3);color:var(--ink);border-radius:4px;padding:1px 5px;font-size:.88em}.callout{border-radius:var(--r);border:1px solid var(--rule);background:var(--paper-2);padding:14px 18px}.callout p{color:var(--ink);margin:0;font-size:15px;line-height:1.6}.callout p+p{margin-top:.5em}.callout-label{font-family:var(--font-mono);letter-spacing:.11em;text-transform:uppercase;font-weight:500;margin-bottom:6px!important;font-size:10.5px!important}.callout-exam{border-color:var(--blue);background:var(--blue-soft)}.callout-exam .callout-label{color:var(--blue-deep)}.callout-drift{border-color:var(--amber);background:var(--amber-soft)}.callout-drift .callout-label{color:var(--amber)}.callout-tip{border-color:var(--success);background:var(--success-soft)}.callout-tip .callout-label{color:var(--success)}.code-block{border:1px solid var(--rule);border-radius:var(--r);margin:1.2em 0 0;overflow:hidden}.code-block figcaption{background:var(--paper-2);border-bottom:1px solid var(--rule);color:var(--ink-2);justify-content:space-between;gap:12px;padding:8px 14px;font-size:13px;display:flex}.code-lang{font-family:var(--font-mono);color:var(--ink-2);font-size:11px}.code-block pre{background:var(--ink);color:var(--paper);font-family:var(--font-mono);margin:0;padding:14px 16px;font-size:13px;line-height:1.6;overflow-x:auto}.code-block pre code{color:inherit;font-size:inherit;background:0 0;padding:0}.table-wrap{margin-top:1.1em;overflow-x:auto}.lesson table{border-collapse:collapse;width:100%;font-size:14.5px}.lesson th,.lesson td{text-align:left;vertical-align:top;border-bottom:1px solid var(--rule-2);color:var(--ink-2);padding:9px 12px;line-height:1.5}.lesson th{color:var(--ink);background:var(--paper-2);border-bottom-color:var(--rule);font-weight:600}.traps td:first-child{color:var(--error)}.skills{list-style:none;padding-left:0!important}.skills li{padding-left:26px;position:relative}.skills li:before{content:"";border:1.5px solid var(--blue);border-radius:3px;width:13px;height:13px;position:absolute;top:.35em;left:2px}.pq-list{gap:18px;margin:0;padding:0;list-style:none;display:grid}.pq{background:var(--paper);border:1px solid var(--rule);border-radius:var(--r);padding:20px 22px}.pq p{margin:0 0 10px}.pq-num{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--blue);font-size:11px}.pq-scenario{color:var(--ink-2);font-size:14.5px;line-height:1.6}.pq-stem{color:var(--ink);font-weight:500;line-height:1.55}.pq-select{color:var(--ink-2);font-weight:400}.pq-options,.pq-why{gap:8px;margin:0;padding:0;list-style:none;display:grid}.pq-options li,.pq-why li{color:var(--ink);grid-template-columns:1.8rem 1fr;gap:8px;font-size:14.8px;line-height:1.5;display:grid}.pq-letter{font-family:var(--font-mono);border:1px solid var(--rule);width:1.5rem;height:1.5rem;color:var(--ink-2);border-radius:50%;place-items:center;font-size:12px;font-weight:500;display:inline-grid}.pq-reveal{border-top:1px solid var(--rule-2);margin-top:16px;padding-top:12px}.pq-reveal summary{cursor:pointer;color:var(--blue);width:fit-content;font-size:14.5px;font-weight:500}.pq-reveal[open] summary{margin-bottom:12px}.pq-why li{color:var(--ink-2);border-radius:6px;padding:8px 10px}.pq-why li.right{background:var(--success-soft);color:var(--ink)}.pq-why li.right strong{color:var(--success)}.pq-why li.right .pq-letter{border-color:var(--success);color:var(--success)}.pq-why li.wrong strong{color:var(--error)}.sources{margin:0 0 32px;padding-left:1.1em;font-size:14.5px}.sources li{margin-top:6px}.sources a{color:var(--blue);text-underline-offset:2px}.lesson-nav{border-top:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;gap:16px;padding-top:20px;display:flex}.lesson-nav a{max-width:48%;color:var(--ink);flex-direction:column;gap:3px;font-size:15px;text-decoration:none;display:flex}.lesson-nav a:hover span:last-child{color:var(--blue)}.lesson-nav a.next{text-align:right;margin-left:auto}.lesson-nav .obj-code{padding:0}@media (max-width:520px){.lesson-nav a{max-width:100%}}.obj-link{color:inherit;border-bottom:1px solid var(--rule);text-decoration:none}.obj-link:hover{color:var(--blue);border-bottom-color:var(--blue)}.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}.callout-plain{border-color:var(--rule);background:var(--paper-3)}.callout-plain .callout-label{color:var(--ink-2)}.example{border:1px solid var(--rule);border-left:4px solid var(--blue);border-radius:var(--r);background:var(--paper);padding:16px 20px}.example p{margin:0}.example-label{font-family:var(--font-mono);letter-spacing:.11em;text-transform:uppercase;color:var(--blue-deep);font-weight:500;margin-bottom:8px!important;font-size:10.5px!important}.example-scenario{font-size:15px;line-height:1.6;color:var(--ink)!important}.example ol{margin:10px 0 0}.example-takeaway{border-top:1px solid var(--rule-2);padding-top:10px;font-size:14.8px;color:var(--ink)!important;margin-top:12px!important}.diagram{border:1px solid var(--rule);border-radius:var(--r);background:var(--paper-2);margin:1.4em 0 0;padding:18px 18px 16px}.diagram .dg-title{font-family:var(--font-mono);letter-spacing:.11em;text-transform:uppercase;color:var(--ink-2);margin:0 0 14px;font-size:10.5px;font-weight:500}.diagram figcaption{color:var(--ink-2);margin-top:14px;font-size:13.8px;line-height:1.55}.diagram ol,.diagram ul{margin:0;padding:0;list-style:none}.diagram li{margin:0}.dg-node{border:1px solid var(--rule);background:var(--paper);text-align:center;border-radius:6px;flex-direction:column;justify-content:center;gap:3px;height:100%;padding:10px 12px;display:flex}.dg-label{color:var(--ink);font-size:14px;font-weight:600;line-height:1.35}.dg-sub{color:var(--ink-2);font-size:12.5px;line-height:1.4}.dg-node.tone-accent{border-color:var(--blue);background:var(--blue-soft)}.dg-node.tone-good{border-color:var(--success);background:var(--success-soft)}.dg-node.tone-bad{border-color:var(--error);background:var(--error-soft)}.dg-node.tone-warn{border-color:var(--amber);background:var(--amber-soft)}.diagram code{font-size:.86em}.dg-flow-row{align-items:stretch;gap:26px;display:flex}.dg-flow-row>li{flex:1 1 0;min-width:0;position:relative}.dg-flow-row>li+li:before{content:"→";color:var(--blue);font-size:15px;font-weight:600;position:absolute;top:50%;left:-20px;transform:translateY(-50%)}.dg-loop{border:1.5px dashed var(--blue);text-align:center;color:var(--blue-deep);border-top:none;border-radius:0 0 8px 8px;margin:12px 0 0;padding:7px 12px;font-size:13px}.dg-loop span{font-size:15px}.dg-hub{flex-direction:column;align-items:center;display:flex}.dg-center{width:100%;max-width:320px}.dg-stem{background:var(--blue);width:2px;height:30px;position:relative}.dg-stem span{white-space:nowrap;font-family:var(--font-mono);color:var(--ink-2);font-size:10.5px;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.dg-spokes{border-top:2px solid var(--blue);grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:10px;width:100%;display:grid;padding-top:12px!important}.dg-layers ol{gap:6px;display:grid}.dg-layers .dg-node{text-align:left;flex-direction:row;justify-content:space-between;align-items:baseline;gap:16px}.dg-layers .dg-sub{text-align:right}.dg-direction{color:var(--ink-2);margin:0 0 8px;font-size:12.5px}.dg-seq-scroll{overflow-x:auto}.dg-seq{grid-template-columns:repeat(var(--n), minmax(0, 1fr));row-gap:6px;min-width:460px;display:grid;position:relative}.dg-seq-lanes{pointer-events:none;grid-template-columns:repeat(var(--n), minmax(0, 1fr));display:grid;position:absolute;inset:0}.dg-seq-lanes span{position:relative}.dg-seq-lanes span:before{content:"";border-left:1px dashed var(--ink-3);position:absolute;top:20px;bottom:0;left:50%}.dg-actor{z-index:1;background:var(--ink);color:var(--paper);text-align:center;border-radius:6px;grid-row:1;justify-self:center;max-width:95%;margin-bottom:8px;padding:6px 10px;font-size:12.5px;font-weight:600;position:relative}.dg-actor code{color:inherit;background:0 0}.dg-msg{z-index:1;flex-direction:column;align-items:center;padding-inline:4px;display:flex;position:relative}.dg-msg .dg-arrow{width:auto;margin-inline:calc(100% / (var(--span) * 2));align-self:stretch}.dg-msg.self .dg-arrow{margin-inline:30%}.dg-msg-label{color:var(--ink);background:var(--paper-2);text-align:center;border-radius:4px;align-items:baseline;gap:6px;max-width:100%;padding:1px 6px;font-size:12.8px;line-height:1.45;display:inline-flex}.dg-msg-label code{white-space:nowrap}.dg-msg-n{font-family:var(--font-mono);color:var(--blue);font-size:10px;font-weight:600}.dg-arrow{height:10px;display:block;position:relative}.dg-arrow:before{content:"";border-top:1.5px solid var(--blue);position:absolute;top:4px;left:0;right:0}.dg-msg.ltr .dg-arrow:after,.dg-msg.rtl .dg-arrow:after{content:"";border-top:5px solid #0000;border-bottom:5px solid #0000;width:0;height:0;position:absolute;top:0}.dg-msg.ltr .dg-arrow:after{border-left:8px solid var(--blue);right:-1px}.dg-msg.rtl .dg-arrow:after{border-right:8px solid var(--blue);left:-1px}.dg-msg.rtl .dg-arrow:before{border-top-style:dashed}.dg-msg.self .dg-arrow:before{border-top:1.5px dotted var(--blue)}.dg-compare{grid-template-columns:1fr 1fr;gap:12px;display:grid}.dg-col{border:1px solid var(--rule);background:var(--paper);border-radius:6px;overflow:hidden}.dg-col-title{border-bottom:1px solid var(--rule);background:var(--paper-3);color:var(--ink);margin:0;padding:8px 12px;font-size:13.5px;font-weight:600}.dg-col.tone-good{border-color:var(--success)}.dg-col.tone-good .dg-col-title{background:var(--success-soft);color:var(--success);border-color:var(--success)}.dg-col.tone-bad{border-color:var(--error)}.dg-col.tone-bad .dg-col-title{background:var(--error-soft);color:var(--error);border-color:var(--error)}.dg-col.tone-accent{border-color:var(--blue)}.dg-col.tone-accent .dg-col-title{background:var(--blue-soft);color:var(--blue-deep);border-color:var(--blue)}.dg-col.tone-warn{border-color:var(--amber)}.dg-col.tone-warn .dg-col-title{background:var(--amber-soft);color:var(--amber);border-color:var(--amber)}.dg-col ul{padding:8px 12px 10px!important}.dg-col li{color:var(--ink-2);border-top:1px solid var(--rule-2);padding:4px 0;font-size:13.8px;line-height:1.5}.dg-col li:first-child{border-top:none}.dg-decision{flex-direction:column;align-items:center;display:flex}.dg-question{text-align:center;background:var(--ink);width:100%;max-width:440px;color:var(--paper);border-radius:6px;padding:10px 14px;font-size:14px;font-weight:600}.dg-question code{color:inherit;background:0 0}.dg-branches{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;width:100%;display:grid;margin-top:14px!important}.dg-branches>li{flex-direction:column;align-items:stretch;gap:4px;display:flex}.dg-when{text-align:center;color:var(--ink-2);font-size:12.5px;font-style:italic}.dg-to{text-align:center;color:var(--blue);font-weight:600;line-height:1}.dg-branches .dg-node{flex:1}@media (max-width:620px){.dg-flow-row{flex-direction:column;gap:22px}.dg-flow-row>li+li:before{content:"↓";top:-19px;left:50%;transform:translate(-50%)}.dg-compare{grid-template-columns:1fr}.dg-layers .dg-node{flex-direction:column;align-items:flex-start;gap:2px}.dg-layers .dg-sub{text-align:left}.dg-stem span{white-space:normal;width:40vw}}.dg-check{gap:6px;display:grid}.dg-check li{background:var(--paper);border:1px solid var(--rule);border-radius:6px;grid-template-columns:1.6rem 1fr auto;align-items:start;gap:10px;padding:9px 12px;display:grid}.dg-mark{width:1.4rem;height:1.4rem;color:var(--paper);border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid}.dg-check-text{color:var(--ink);font-size:14px;line-height:1.5}.dg-check-note{color:var(--ink-2);margin-top:2px;font-size:12.8px;display:block}.dg-status{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;padding-top:3px;font-size:10.5px;font-weight:600}.dg-check .st-pass .dg-mark{background:var(--success)}.dg-check .st-pass .dg-status{color:var(--success)}.dg-check .st-fail{border-color:var(--error);background:var(--error-soft)}.dg-check .st-fail .dg-mark{background:var(--error)}.dg-check .st-fail .dg-status{color:var(--error)}.dg-check .st-missing{border-style:dashed}.dg-check .st-missing .dg-mark{background:var(--paper);color:var(--ink-2);border:1.5px dashed var(--ink-3)}.dg-check .st-missing .dg-status{color:var(--ink-2)}.dg-check .st-warn{border-color:var(--amber);background:var(--amber-soft)}.dg-check .st-warn .dg-mark{background:var(--amber)}.dg-check .st-warn .dg-status{color:var(--amber)}.dg-ba{grid-template-columns:1fr 1fr;gap:12px;display:grid}.dg-ba-col{border:1px solid var(--rule);background:var(--paper);border-radius:6px;flex-direction:column;display:flex;overflow:hidden}.dg-ba-title{border-bottom:1px solid var(--rule);justify-content:space-between;gap:10px;margin:0;padding:8px 12px;font-size:13.5px;font-weight:600;display:flex}.dg-ba-col.before{border-color:var(--error)}.dg-ba-col.before .dg-ba-title{background:var(--error-soft);color:var(--error);border-color:var(--error)}.dg-ba-col.after{border-color:var(--success)}.dg-ba-col.after .dg-ba-title{background:var(--success-soft);color:var(--success);border-color:var(--success)}.dg-ba pre{white-space:pre-wrap;word-break:break-word;font-family:var(--font-mono);color:var(--ink);background:var(--paper);flex:1;margin:0;padding:12px 14px;font-size:12.5px;line-height:1.6}.dg-ba pre code{font-size:inherit;background:0 0;padding:0}@media (max-width:620px){.dg-ba{grid-template-columns:1fr}}.study-layout{grid-template-columns:17.5rem minmax(0,1fr);align-items:start;gap:0 clamp(28px,4vw,56px);padding-top:8px;display:grid}.study-main{min-width:0;padding-bottom:72px}.study-main .lesson{max-width:72ch}.study-side{overscroll-behavior:contain;border-right:1px solid var(--rule);scrollbar-width:thin;align-self:start;max-height:100vh;padding:24px 6px 32px 0;position:sticky;top:0;overflow-y:auto}.sn-mobile{display:none}.sn{font-size:14px}.sn ol,.sn ul{margin:0;padding:0;list-style:none}.sn a{color:inherit;text-decoration:none}.sn-exam{border-radius:var(--r);background:var(--blue-soft);border:1px solid #0000;flex-direction:column;gap:3px;margin-right:14px;padding:12px 14px;display:flex}.sn-exam:hover,.sn-exam[aria-current=page]{border-color:var(--blue)}.sn-code{font-family:var(--font-mono);letter-spacing:.09em;color:var(--blue);font-size:11px;font-weight:500}.sn-name{font-family:var(--font-display);color:var(--ink);font-size:14.5px;font-weight:600;line-height:1.3}.sn-top{gap:2px;display:grid;margin:14px 14px 0 0!important}.sn-item{color:var(--ink);border-radius:6px;align-items:center;gap:10px;padding:8px 10px;font-weight:500;display:flex}a.sn-item:hover{background:var(--paper-2);color:var(--blue)}.sn-icon{text-align:center;width:18px;color:var(--blue);font-size:14px}.sn-disabled{color:var(--ink-2);cursor:default}.sn-disabled .sn-icon{color:var(--ink-3)}.sn-soon{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);background:var(--paper-3);white-space:nowrap;border-radius:3px;margin-left:auto;padding:2px 6px;font-size:9.5px;font-weight:500}.sn-obj .sn-soon{vertical-align:1px;margin-left:6px}.sn-heading{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);margin:22px 0 6px;padding-left:10px;font-size:10.5px;font-weight:500}.sn-domains{gap:2px;display:grid;margin-right:14px!important}.sn-domains summary{cursor:pointer;color:var(--ink);border-radius:6px;grid-template-columns:1.4rem 1fr auto;align-items:baseline;gap:8px;padding:8px 10px;font-weight:600;line-height:1.35;list-style:none;display:grid}.sn-domains summary::-webkit-details-marker{display:none}.sn-domains summary:hover{background:var(--paper-2)}.sn-domains details[open]>summary{color:var(--blue-deep)}.sn-dn{font-family:var(--font-mono);color:var(--blue);background:var(--blue-soft);border-radius:4px;place-items:center;width:1.3rem;height:1.3rem;font-size:11px;font-weight:600;display:inline-grid}.sn-dname{font-size:13.5px}.sn-dw{font-family:var(--font-mono);color:var(--ink-2);font-size:11px;font-weight:500}.sn-objs{border-left:1.5px solid var(--rule);margin:2px 0 6px 20px!important}.sn-obj{color:var(--ink-2);border-left:1.5px solid #0000;grid-template-columns:2.1rem 1fr;gap:6px;margin-left:-1.5px;padding:6px 10px 6px 12px;font-size:13.2px;line-height:1.4;display:grid}a.sn-obj{color:var(--ink)}a.sn-obj:hover{color:var(--blue);border-left-color:var(--rule)}a.sn-obj[aria-current=page]{color:var(--blue-deep);border-left-color:var(--blue);background:var(--blue-soft);border-radius:0 6px 6px 0;font-weight:600}.sn-oc{font-family:var(--font-mono);color:var(--ink-2);padding-top:1px;font-size:11px;font-weight:400}a.sn-obj[aria-current=page] .sn-oc{color:var(--blue)}.sn-obj.sn-disabled{color:var(--ink-2)}.sn-progress{color:var(--ink-2);margin:0 0 8px 34px;font-size:11.5px}.lesson-head{max-width:72ch;padding:clamp(28px,4vw,44px) 0 8px}.lesson-head h1{letter-spacing:-.03em;margin:0 0 14px;font-size:clamp(1.9rem,4vw,2.6rem);line-height:1.1}.lesson-jump{flex-wrap:wrap;gap:8px;margin:22px 0 0;padding:0;list-style:none;display:flex}.lesson-jump a{color:var(--ink-2);border:1px solid var(--rule);border-radius:20px;padding:4px 12px;font-size:13px;font-weight:500;text-decoration:none;display:inline-block}.lesson-jump a:hover{color:var(--blue);border-color:var(--blue)}.study-main #lesson{border-top:1px solid var(--rule);margin-top:24px;padding-top:28px}.practice{background:var(--paper-2);border:1px solid var(--rule-2);border-radius:12px;margin-top:56px;padding:28px clamp(18px,3vw,32px)}.practice .section-lede{margin-bottom:24px}.lesson-end{margin-top:48px}.study-main h2.section-title{font-size:clamp(1.4rem,2.6vw,1.8rem)}@media (max-width:960px){.study-layout{grid-template-columns:minmax(0,1fr)}.study-side{display:none}.sn-mobile{border:1px solid var(--rule);border-radius:var(--r);background:var(--paper-2);margin-top:16px;display:block}.sn-mobile>summary{cursor:pointer;color:var(--ink);padding:12px 16px;font-size:14px;font-weight:600}.sn-mobile[open]>summary{border-bottom:1px solid var(--rule)}.sn-mobile .sn{padding:14px 4px 14px 14px}}.cert-split{grid-template-columns:minmax(0,23rem) minmax(0,1fr);align-items:start;gap:clamp(32px,5vw,72px);padding-block:clamp(40px,6vw,72px);display:grid}.cert-split>.cert-domains{overscroll-behavior:contain;scrollbar-width:thin;max-height:100vh;padding:0 12px 24px 0;position:sticky;top:0;overflow-y:auto}.cert-split .section-title{margin-bottom:10px}.cert-split .weights li{padding:12px 0}.cert-split .objectives li{grid-template-columns:2.3rem 1fr;padding-left:12px;font-size:13.6px}.cert-split .section-lede{margin-bottom:22px;font-size:14.5px}.cert-actions{gap:8px;margin:0 0 26px;display:grid}.cert-split>section{padding-block:0}.cert-actions>a,.cert-actions>span{border-radius:var(--r);justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;font-size:14.5px;font-weight:500;text-decoration:none;display:flex}.cert-actions>a{background:var(--blue);color:var(--blue-ink)}.cert-actions>a:hover{background:var(--blue-deep)}.cert-actions>span{border:1px dashed var(--rule);color:var(--ink-2)}.cert-guide{min-width:0}.cert-guide .prose{max-width:70ch}@media (max-width:960px){.cert-split{grid-template-columns:minmax(0,1fr)}.cert-split>.cert-domains{max-height:none;padding:0;position:static;overflow:visible}}.page-lede{color:var(--ink-2);max-width:60ch;margin:16px 0 0;font-size:1.05rem}.study-overview{border-top:1px solid var(--rule);margin-top:24px;padding-top:32px}.study-overview .study-domain{max-width:none}.cert-domains .section-title{font-size:clamp(1.35rem,2vw,1.6rem)}
