.emdash-knowledge-check[data-astro-cid-4u2iol3u]{border:1px solid color-mix(in srgb, currentColor 20%, transparent);border-radius:.75rem;padding:1.25rem}.emdash-knowledge-check[data-astro-cid-4u2iol3u] fieldset[data-astro-cid-4u2iol3u]{border:0;gap:.5rem;margin-block:1.25rem;padding:0;display:grid}.emdash-knowledge-check[data-astro-cid-4u2iol3u] legend[data-astro-cid-4u2iol3u]{margin-block-end:.5rem;font-weight:650}.emdash-knowledge-check[data-astro-cid-4u2iol3u] label[data-astro-cid-4u2iol3u]{display:block}.emdash-knowledge-check[data-astro-cid-4u2iol3u] input[data-astro-cid-4u2iol3u][type=text]{box-sizing:border-box;width:min(100%,36rem);padding:.6rem .75rem}.emdash-knowledge-check[data-astro-cid-4u2iol3u] button[data-astro-cid-4u2iol3u]{cursor:pointer;padding:.65rem 1rem}.emdash-knowledge-check[data-astro-cid-4u2iol3u] .is-passed[data-astro-cid-4u2iol3u]{color:#166534;font-weight:700}.emdash-knowledge-check[data-astro-cid-4u2iol3u] .is-not-passed[data-astro-cid-4u2iol3u]{color:#9a3412;font-weight:700}.emdash-image-media[data-astro-cid-6depetnu]{max-width:100%;height:auto}:where(:root.dark) .emdash-image--light,:where(:root.light) .emdash-image--dark{display:none}@media (prefers-color-scheme:dark){:where(:root:not(.light)) .emdash-image--light{display:none}}@media (prefers-color-scheme:light){:where(:root:not(.dark)) .emdash-image--dark{display:none}}.has-text-align-center[data-astro-cid-44ocxh3s]{text-align:center}.has-text-align-right[data-astro-cid-44ocxh3s]{text-align:right}.has-text-align-justify[data-astro-cid-44ocxh3s]{text-align:justify}.emdash-image[data-astro-cid-nzlefzml]{margin:1.5rem 0}.emdash-image[data-astro-cid-nzlefzml] img[data-astro-cid-nzlefzml]{max-width:100%;height:auto}.emdash-image[data-astro-cid-nzlefzml] figcaption[data-astro-cid-nzlefzml]{color:var(--emdash-caption-color,var(--color-muted,#666));text-align:center;margin-top:.5rem;font-size:.875rem}.emdash-image--align-left[data-astro-cid-nzlefzml],.emdash-image--align-right[data-astro-cid-nzlefzml]{width:fit-content;max-width:50%}.emdash-image--align-left[data-astro-cid-nzlefzml]{float:left;margin:0 1.5rem 1rem 0}.emdash-image--align-right[data-astro-cid-nzlefzml]{float:right;margin:0 0 1rem 1.5rem}.emdash-image--align-center[data-astro-cid-nzlefzml]{width:fit-content;margin-inline:auto}.emdash-image--align-wide[data-astro-cid-nzlefzml],.emdash-image--align-full[data-astro-cid-nzlefzml]{width:100%}@media (width<=640px){.emdash-image--align-left[data-astro-cid-nzlefzml],.emdash-image--align-right[data-astro-cid-nzlefzml]{float:none;width:100%;max-width:100%;margin-inline:0}}.emdash-code[data-astro-cid-dgremz56]{margin:1.5rem 0}.emdash-code-filename[data-astro-cid-dgremz56]{color:#ccc;background:#2d2d2d;border-radius:.5rem .5rem 0 0;padding:.5rem 1rem;font-family:monospace;font-size:.75rem}.emdash-code[data-astro-cid-dgremz56] pre[data-astro-cid-dgremz56]{background:#1e1e1e;border-radius:.5rem;margin:0;padding:1rem;overflow-x:auto}.emdash-code-filename[data-astro-cid-dgremz56]+pre[data-astro-cid-dgremz56]{border-radius:0 0 .5rem .5rem}.emdash-code[data-astro-cid-dgremz56] code[data-astro-cid-dgremz56]{color:#e0e0e0;font-family:Fira Code,Consolas,monospace;font-size:.875rem}.emdash-embed[data-astro-cid-n4v2ghzc]{margin:1.5rem 0}.emdash-embed-video[data-astro-cid-n4v2ghzc]{height:0;padding-bottom:56.25%;position:relative;overflow:hidden}.emdash-embed-video[data-astro-cid-n4v2ghzc] iframe[data-astro-cid-n4v2ghzc],.emdash-embed-video[data-astro-cid-n4v2ghzc] video[data-astro-cid-n4v2ghzc]{border:0;width:100%;height:100%;position:absolute;top:0;left:0}.emdash-embed-audio[data-astro-cid-n4v2ghzc],.emdash-embed-audio[data-astro-cid-n4v2ghzc] audio[data-astro-cid-n4v2ghzc]{width:100%}.emdash-embed[data-astro-cid-n4v2ghzc] figcaption[data-astro-cid-n4v2ghzc]{color:var(--emdash-caption-color,var(--color-muted,#666));text-align:center;margin-top:.5rem;font-size:.875rem}.emdash-gallery[data-astro-cid-d6nmylgu]{grid-template-columns:repeat(var(--columns,3), 1fr);gap:1rem;margin:1.5rem 0;display:grid}.emdash-gallery-item[data-astro-cid-d6nmylgu]{margin:0}.emdash-gallery-item[data-astro-cid-d6nmylgu] img[data-astro-cid-d6nmylgu]{object-fit:cover;aspect-ratio:1;width:100%;height:auto}.emdash-gallery-item[data-astro-cid-d6nmylgu] figcaption[data-astro-cid-d6nmylgu]{color:var(--emdash-caption-color,var(--color-muted,#666));text-align:center;margin-top:.25rem;font-size:.75rem}@media (width<=640px){.emdash-gallery[data-astro-cid-d6nmylgu]{grid-template-columns:repeat(2,1fr)}}.emdash-columns[data-astro-cid-sjaxkm7w]{gap:2rem;margin:1.5rem 0;display:flex}.emdash-column[data-astro-cid-sjaxkm7w]{flex:1;min-width:0}@media (width<=768px){.emdash-columns[data-astro-cid-sjaxkm7w]{flex-direction:column;gap:1rem}}.emdash-break[data-astro-cid-gvovdxls]{margin:2rem 0}.emdash-break-line[data-astro-cid-gvovdxls]{border:none;border-top:1px solid var(--emdash-break-color,var(--color-border,#e0e0e0))}.emdash-break-dots[data-astro-cid-gvovdxls]{text-align:center;color:var(--emdash-break-dots-color,var(--color-muted,#999));letter-spacing:.5em}.emdash-break-space[data-astro-cid-gvovdxls]{height:2rem}iframe[data-emdash-html-block]{border:0;width:100%;margin:1.5rem 0;display:block}.emdash-html-block[data-astro-cid-7hlqo6bn]{margin:1.5rem 0}.emdash-iframe[data-astro-cid-fhxykd76]{aspect-ratio:16/9;width:100%;margin:1.5rem 0}.emdash-iframe[data-astro-cid-fhxykd76] iframe{border:0;width:100%;height:100%;display:block}.emdash-video[data-astro-cid-ymu5gvpn]{margin:1.5rem 0}.emdash-video[data-astro-cid-ymu5gvpn] video[data-astro-cid-ymu5gvpn]{width:100%;height:auto;max-height:70vh;display:block}.emdash-video[data-astro-cid-ymu5gvpn] figcaption[data-astro-cid-ymu5gvpn]{color:var(--emdash-caption-color,var(--color-muted,#666));text-align:center;margin-top:.5rem;font-size:.875rem}.emdash-table-wrapper[data-astro-cid-7uypp5bz]{overscroll-behavior-inline:contain;max-inline-size:100%;margin-block:1.5rem;overflow-x:auto}.emdash-table[data-astro-cid-7uypp5bz]{border-collapse:collapse;inline-size:100%;font-size:.9rem}.emdash-table[data-astro-cid-7uypp5bz] th[data-astro-cid-7uypp5bz],.emdash-table[data-astro-cid-7uypp5bz] td[data-astro-cid-7uypp5bz]{border:1px solid var(--color-border,#ddd);text-align:start;vertical-align:top;padding:.75rem;position:relative}.emdash-table[data-astro-cid-7uypp5bz] th[data-astro-cid-7uypp5bz] p,.emdash-table[data-astro-cid-7uypp5bz] td[data-astro-cid-7uypp5bz] p{margin:0}.emdash-table[data-astro-cid-7uypp5bz] th[data-astro-cid-7uypp5bz]{background:var(--color-surface,#f5f5f5);font-weight:600}.emdash-table[data-astro-cid-7uypp5bz] tbody[data-astro-cid-7uypp5bz] tr[data-astro-cid-7uypp5bz]:nth-child(2n){background:var(--color-bg-subtle,#fafafa)}.emdash-table[data-astro-cid-7uypp5bz] tbody[data-astro-cid-7uypp5bz] tr[data-astro-cid-7uypp5bz]:hover{background:var(--color-surface,#f0f0f0)}.emdash-button[data-astro-cid-i644adhy]{cursor:pointer;border-radius:4px;padding:.75em 1.5em;font-weight:500;text-decoration:none;transition:background-color .2s,border-color .2s,color .2s;display:inline-block}.emdash-button--default[data-astro-cid-i644adhy],.emdash-button--fill[data-astro-cid-i644adhy]{background-color:var(--emdash-button-bg,#0073aa);color:var(--emdash-button-color,#fff);border:2px solid var(--emdash-button-bg,#0073aa)}.emdash-button--default[data-astro-cid-i644adhy]:hover,.emdash-button--fill[data-astro-cid-i644adhy]:hover{background-color:var(--emdash-button-bg-hover,#005177);border-color:var(--emdash-button-bg-hover,#005177)}.emdash-button--outline[data-astro-cid-i644adhy]{color:var(--emdash-button-bg,#0073aa);border:2px solid var(--emdash-button-bg,#0073aa);background-color:#0000}.emdash-button--outline[data-astro-cid-i644adhy]:hover{background-color:var(--emdash-button-bg,#0073aa);color:var(--emdash-button-color,#fff)}.emdash-buttons[data-astro-cid-pxkpowas]{flex-wrap:wrap;gap:.75rem;margin:1.5rem 0;display:flex}.emdash-buttons--vertical[data-astro-cid-pxkpowas]{flex-direction:column;align-items:flex-start}.emdash-buttons--horizontal[data-astro-cid-pxkpowas]{flex-direction:row;align-items:center}.emdash-cover[data-astro-cid-g6rigryn]{background-color:var(--emdash-cover-fallback-bg,#333);border-radius:4px;align-items:center;margin:1.5rem 0;padding:2rem;display:flex;position:relative;overflow:hidden}.emdash-cover__background[data-astro-cid-g6rigryn]{object-fit:cover;z-index:0;width:100%;height:100%;position:absolute;inset:0}.emdash-cover__video[data-astro-cid-g6rigryn]{object-fit:cover}.emdash-cover__overlay[data-astro-cid-g6rigryn]{z-index:1;position:absolute;inset:0}.emdash-cover__content[data-astro-cid-g6rigryn]{z-index:2;width:100%;color:var(--emdash-cover-text-color,#fff);position:relative}.emdash-cover--align-left[data-astro-cid-g6rigryn]{text-align:left;justify-content:flex-start}.emdash-cover--align-center[data-astro-cid-g6rigryn]{text-align:center;justify-content:center}.emdash-cover--align-right[data-astro-cid-g6rigryn]{text-align:right;justify-content:flex-end}.emdash-cover__content[data-astro-cid-g6rigryn] h1,.emdash-cover__content[data-astro-cid-g6rigryn] h2,.emdash-cover__content[data-astro-cid-g6rigryn] h3,.emdash-cover__content[data-astro-cid-g6rigryn] h4,.emdash-cover__content[data-astro-cid-g6rigryn] p{color:inherit}.emdash-file[data-astro-cid-dsnn5jk3]{background-color:var(--emdash-file-bg,#f5f5f5);border:1px solid var(--emdash-file-border,#e0e0e0);border-radius:4px;align-items:center;gap:.75rem;margin:1rem 0;padding:1rem;display:flex}.emdash-file__link[data-astro-cid-dsnn5jk3]{color:var(--emdash-file-color,#333);flex:1;align-items:center;gap:.5rem;text-decoration:none;display:flex}.emdash-file__link[data-astro-cid-dsnn5jk3]:hover{text-decoration:underline}.emdash-file__icon[data-astro-cid-dsnn5jk3]{width:1.5rem;height:1.5rem;color:var(--emdash-file-icon-color,#666);flex-shrink:0}.emdash-file__name[data-astro-cid-dsnn5jk3]{word-break:break-all;font-weight:500}.emdash-file__download[data-astro-cid-dsnn5jk3]{background-color:var(--emdash-button-bg,#0073aa);width:2.5rem;height:2.5rem;color:var(--emdash-button-color,#fff);border-radius:4px;justify-content:center;align-items:center;transition:background-color .2s;display:flex}.emdash-file__download[data-astro-cid-dsnn5jk3]:hover{background-color:var(--emdash-button-bg-hover,#005177)}.emdash-file__download[data-astro-cid-dsnn5jk3] svg[data-astro-cid-dsnn5jk3]{width:1.25rem;height:1.25rem}.emdash-pullquote[data-astro-cid-mtrxdgkr]{border-top:4px solid var(--emdash-pullquote-border,#0073aa);border-bottom:4px solid var(--emdash-pullquote-border,#0073aa);text-align:center;margin:2rem 0;padding:1.5rem 2rem}.emdash-pullquote__text[data-astro-cid-mtrxdgkr]{color:var(--emdash-pullquote-color,#333);margin:0;font-size:1.5rem;font-style:italic;line-height:1.4}.emdash-pullquote__citation[data-astro-cid-mtrxdgkr]{color:var(--emdash-pullquote-citation-color,#666);margin-top:1rem;font-size:.9rem;font-style:normal}@layer base{:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--color-bg:var(--lightningcss-light,#fafafa)var(--lightningcss-dark,#0a0a0a);--color-surface:var(--lightningcss-light,#fff)var(--lightningcss-dark,#141414);--color-fill:var(--lightningcss-light,#f2f2f2)var(--lightningcss-dark,#1f1f1f);--color-fill-strong:var(--lightningcss-light,#e8e8e8)var(--lightningcss-dark,#2a2a2a);--color-bg-subtle:var(--color-fill);--color-text:var(--lightningcss-light,#171717)var(--lightningcss-dark,#ededed);--color-text-secondary:var(--lightningcss-light,#525252)var(--lightningcss-dark,#a3a3a3);--color-muted:var(--lightningcss-light,#6b6b6b)var(--lightningcss-dark,#8f8f8f);--color-border:var(--lightningcss-light,#e5e5e5)var(--lightningcss-dark,#262626);--color-border-subtle:var(--lightningcss-light,#efefef)var(--lightningcss-dark,#1c1c1c);--color-border-strong:var(--lightningcss-light,#d4d4d4)var(--lightningcss-dark,#3a3a3a);--color-ring:var(--lightningcss-light,#00000012)var(--lightningcss-dark,#ffffff17);--color-media-outline:var(--lightningcss-light,#0000001a)var(--lightningcss-dark,#ffffff1a);--color-shadow:var(--lightningcss-light,#0000000f)var(--lightningcss-dark,#0006);--color-shadow-strong:var(--lightningcss-light,#0000001f)var(--lightningcss-dark,#0009);--color-brand:var(--lightningcss-light,#171717)var(--lightningcss-dark,#fafafa);--color-brand-hover:var(--lightningcss-light,#404040)var(--lightningcss-dark,#d4d4d4);--color-on-brand:var(--lightningcss-light,#fff)var(--lightningcss-dark,#0a0a0a);--color-brand-ring:color-mix(in srgb, var(--color-brand) 15%, transparent);--emdash-search-bg:var(--color-surface);--emdash-search-text:var(--color-text);--emdash-search-muted:var(--color-muted);--emdash-search-border:var(--color-border);--emdash-search-hover:var(--color-fill);--emdash-search-highlight:var(--color-text);--font-heading:var(--font-body);--font-weight-heading:600;--font-weight-display:600;--font-size-label:.75rem;--font-size-xs:.8125rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:2rem;--font-size-4xl:2.5rem;--font-size-5xl:3.5rem;--font-size-display:clamp(2.25rem, 1.6rem + 2.6vw, 3.5rem);--leading-tight:1.1;--leading-snug:1.3;--leading-normal:1.5;--leading-relaxed:1.7;--tracking-tight:-.035em;--tracking-snug:-.02em;--tracking-wide:.06em;--tracking-wider:.08em;--spacing-1:.25rem;--spacing-2:.5rem;--spacing-3:.75rem;--spacing-4:1rem;--spacing-5:1.25rem;--spacing-6:1.5rem;--spacing-8:2rem;--spacing-10:2.5rem;--spacing-12:3rem;--spacing-16:4rem;--spacing-20:5rem;--spacing-24:6rem;--spacing-xs:var(--spacing-1);--spacing-sm:var(--spacing-2);--spacing-md:var(--spacing-4);--spacing-lg:var(--spacing-6);--spacing-xl:var(--spacing-8);--spacing-2xl:var(--spacing-12);--spacing-3xl:var(--spacing-16);--content-width:680px;--wide-width:1200px;--max-width:var(--content-width);--frame-margin:clamp(.75rem, 3vw, 2rem);--frame-padding:clamp(1rem, 3vw, 2rem);--frame-width:min(100% - 2 * var(--frame-margin), var(--wide-width));--gutter-width:200px;--meta-col-width:180px;--nav-height:64px;--search-input-width:200px;--radius-sm:6px;--radius:8px;--radius-lg:12px;--radius-xl:18px;--radius-full:999px;--card-padding:6px;--ease-out:cubic-bezier(.2, 0, 0, 1);--transition-fast:.15s var(--ease-out);--transition-base:.25s var(--ease-out);--avatar-size-xs:20px;--avatar-size-sm:24px;--avatar-size-md:32px;--avatar-size-lg:40px;--tag-padding-y:2px;--shadow-sm:0 1px 2px var(--color-shadow);--shadow-card:0 0 0 1px var(--color-ring), 0 1px 2px var(--color-shadow), 0 4px 12px -4px var(--color-shadow);--shadow-card-hover:0 0 0 1px var(--color-ring), 0 2px 4px var(--color-shadow), 0 16px 32px -12px var(--color-shadow-strong);--shadow-lg:0 0 0 1px var(--color-ring), 0 16px 40px -12px var(--color-shadow-strong)}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@supports not (color:light-dark(#000, #fff)){:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-bg:#fafafa;--color-surface:#fff;--color-fill:#f2f2f2;--color-fill-strong:#e8e8e8;--color-text:#171717;--color-text-secondary:#525252;--color-muted:#6b6b6b;--color-border:#e5e5e5;--color-border-subtle:#efefef;--color-border-strong:#d4d4d4;--color-ring:#00000012;--color-media-outline:#0000001a;--color-shadow:#0000000f;--color-shadow-strong:#0000001f;--color-brand:#171717;--color-brand-hover:#404040;--color-on-brand:#fff}}.prose{--prose-color:color-mix(in srgb, var(--color-text) 82%, var(--color-bg));--emdash-caption-color:var(--color-muted);--emdash-break-color:var(--color-border);--emdash-break-dots-color:var(--color-muted);--emdash-pullquote-border:var(--color-border);--emdash-pullquote-color:var(--color-text);--emdash-pullquote-citation-color:var(--color-muted);--emdash-button-bg:var(--color-brand);--emdash-button-bg-hover:var(--color-brand-hover);--emdash-button-color:var(--color-on-brand);--emdash-file-bg:var(--color-surface);--emdash-file-border:var(--color-border);--emdash-file-color:var(--color-text);--emdash-file-icon-color:var(--color-muted);max-width:var(--content-width);font-size:var(--font-size-lg);color:var(--prose-color);overflow-wrap:break-word;text-align:start;line-height:1.75}@media (width>=640px){.prose{text-align:justify;hyphens:auto}}.prose :is(h1,h2,h3,h4,h5,h6){text-align:start;hyphens:none}.prose>*{margin-block:0}.prose>*+*{margin-block-start:1.5em}.prose>:is(h1,h2){margin-block-start:3em}.prose>:is(h3,h4,h5,h6){margin-block-start:2.5em}.prose>:is(h1,h2,h3,h4,h5,h6)+*{margin-block-start:1em}.prose p{text-wrap:pretty}.prose>:first-child{margin-block-start:0}.prose :is(h1,h2,h3,h4,h5,h6){color:var(--color-text);line-height:var(--leading-snug)}.prose h6{color:var(--color-text-secondary)}.prose a:where(:not([class*=emdash])){color:var(--color-link,#2563eb);-webkit-text-decoration-skip-ink:auto;text-decoration-skip-ink:auto;text-underline-offset:.2em;font-weight:600;text-decoration-line:underline;text-decoration-color:currentColor;text-decoration-thickness:1.5px}.prose a:where(:not([class*=emdash])):hover{color:var(--color-link-hover,#1d4ed8)}.prose :is(strong,b){color:var(--color-text);font-weight:600}.prose :is(sub,sup){font-size:.75em;line-height:0}.prose :not(pre)>code{border-radius:var(--radius-sm);background:var(--color-fill);color:var(--color-text);font-family:var(--font-mono);-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:.15em .35em;font-size:.85em}.prose :is(ul,ol){padding-inline-start:1.5em}.prose li{padding-inline-start:.25em}.prose li+li,.prose li>:is(ul,ol){margin-block-start:.65em}.prose li::marker{color:var(--color-muted);font-variant-numeric:tabular-nums}.prose blockquote:where(:not([class*=emdash])){border-inline-start:2px solid var(--color-border-strong);color:var(--color-text);padding-inline-start:1.25em}.prose blockquote>*+*{margin-block-start:.75em}.prose hr{border:0;border-block-start:1px solid var(--color-border);margin-block:2.5em}.prose img{border-radius:var(--radius-lg)}.prose .sign-figure{text-align:center;max-width:160px;margin-inline:auto}.prose .sign-figure img{width:120px;height:auto;margin-inline:auto;display:block}.prose :is(figure>img,figure>a>img,.emdash-gallery-item img){outline:1px solid var(--color-media-outline);outline-offset:-1px}.prose figcaption{color:var(--color-muted);font-size:var(--font-size-sm);line-height:var(--leading-normal);text-align:center;margin-block-start:.75em}.prose :is(.emdash-embed-video,.emdash-iframe),.prose .emdash-video video{border-radius:var(--radius-lg);background:var(--color-fill);overflow:hidden}.prose .emdash-table-wrapper{--color-surface:var(--color-fill);--color-bg-subtle:color-mix(in srgb, var(--color-fill) 50%, transparent)}@media (width<=640px){.prose{font-size:1.0625rem;line-height:1.7}}a{color:inherit;text-decoration:none}}@font-face{font-family:Inter;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/inter-latin.woff2)format("woff2");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:Inter;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/inter-latin-ext.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/inter-vietnamese.woff2)format("woff2");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}:root{--font-body:"Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-heading:"Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--font-size-label:.72rem;--font-size-xs:.78rem;--font-size-sm:.88rem;--font-size-base:1rem;--font-size-lg:1.12rem;--font-size-xl:1.25rem;--font-size-2xl:1.4rem;--font-size-3xl:1.65rem;--font-size-4xl:1.9rem;--font-size-5xl:2.15rem;--font-size-display:clamp(1.45rem, 1.15rem + 1.5vw, 2rem);--leading-tight:1.2;--leading-snug:1.35;--leading-normal:1.55;--leading-relaxed:1.7;--color-brand:var(--lightningcss-light,#0284c7)var(--lightningcss-dark,#38bdf8);--color-brand-hover:var(--lightningcss-light,#0369a1)var(--lightningcss-dark,#7dd3fc);--color-on-brand:#fff;--color-link:var(--lightningcss-light,#2563eb)var(--lightningcss-dark,#60a5fa);--color-link-hover:var(--lightningcss-light,#1d4ed8)var(--lightningcss-dark,#93c5fd);--radius-sm:6px;--radius:10px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--btn-pad-y:.55rem;--btn-pad-x:1.15rem;--btn-font-size:.9rem;--btn-font-weight:600;--btn-radius:var(--radius-sm)}h1{letter-spacing:-.02em;font-size:clamp(1.45rem,1.2rem + 1vw,1.7rem);font-weight:750;line-height:1.25}h2{letter-spacing:-.015em;font-size:1.3rem;font-weight:700;line-height:1.3}h3{font-size:1.125rem;font-weight:650;line-height:1.35}h4{font-size:1rem;font-weight:650;line-height:1.4}h5,h6{font-size:.95rem;font-weight:600;line-height:1.4}.btn,.btn-primary,.btn-secondary,.btn-ghost{padding:var(--btn-pad-y) var(--btn-pad-x);font-size:var(--btn-font-size);font-weight:var(--btn-font-weight);border-radius:var(--btn-radius);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:.45rem;line-height:1.2;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}.btn-primary{background:var(--color-brand);color:var(--color-on-brand)}.btn-primary:hover:not(:disabled){background:var(--color-brand-hover)}.btn-secondary{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border-strong)}.btn-secondary:hover:not(:disabled){background:var(--color-fill)}.btn-ghost{color:var(--color-text-secondary);background:0 0}.btn-ghost:hover:not(:disabled){color:var(--color-text);background:var(--color-fill)}.btn:disabled,.btn-primary:disabled,.btn-secondary:disabled,.btn-ghost:disabled{opacity:.55;cursor:not-allowed}.zc-card-rules a,.ex-review a{color:var(--color-link);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, currentColor 35%, transparent);text-decoration-color:color-mix(in srgb, currentColor 35%, transparent);text-underline-offset:2px}.zc-card-rules a:hover,.ex-review a:hover{color:var(--color-link-hover)}ins.adsbygoogle{max-width:100%;margin-inline:auto;text-decoration:none;display:block}ins.adsbygoogle iframe,.google-auto-placed iframe{max-width:100%!important}ins.adsbygoogle[data-ad-format=fluid],.google-auto-placed{min-height:100px}:where(main) p+p:not([class*=course-card]){margin-block-start:1.15em}:where(main) :is(p,ul,ol,blockquote)+:is(h1,h2,h3,h4,h5,h6):not([class*=card]){margin-block-start:1.75em}html{font-size:85%}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.prose .emdash-code pre{border-radius:var(--radius-lg)!important;background:var(--color-fill)!important;padding:1rem 1.25rem!important}.prose .emdash-code-filename+pre{border-radius:0 0 var(--radius-lg) var(--radius-lg)!important}.prose .emdash-code code{line-height:1.7;color:var(--color-text)!important;font-family:var(--font-mono)!important;font-size:var(--font-size-sm)!important}.prose .emdash-code-filename{border-block-end:1px solid var(--color-border);border-radius:var(--radius-lg) var(--radius-lg) 0 0!important;background:var(--color-fill-strong)!important;color:var(--color-text-secondary)!important;font-family:var(--font-mono)!important;padding:.5rem 1.25rem!important}.prose .emdash-button{border-radius:var(--radius-full)!important}.prose .emdash-file{border-radius:var(--radius-lg)!important}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background-color:var(--color-bg);color:var(--color-text);flex-direction:column;min-height:100vh;line-height:1.6;transition:background-color .2s,color .2s;display:flex}.site-container{width:100%;max-width:1080px;margin:0 auto;padding-inline:1.5rem}.site-header{z-index:50;background-color:color-mix(in srgb, var(--color-bg) 85%, transparent);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);transition:border-color .2s;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:1rem;height:54px;display:flex}.site-brand{letter-spacing:-.015em;align-items:center;gap:.6rem;font-size:1.05rem;font-weight:700;display:flex}.brand-badge svg{display:block}.brand-badge{border-radius:var(--radius);color:#fff;background:linear-gradient(135deg,#0284c7,#2563eb);justify-content:center;align-items:center;width:28px;height:28px;font-size:.8125rem;font-weight:800;display:inline-flex;box-shadow:0 2px 6px #0284c74d}.site-nav{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.nav-link{border-radius:var(--radius);font-size:var(--font-size-sm);color:var(--color-text-secondary);align-items:center;gap:.3rem;padding:.3rem .7rem;font-weight:500;transition:all .15s;display:inline-flex}.nav-link:hover{color:var(--color-text);background-color:var(--color-fill)}.nav-link.active{color:var(--color-brand);background-color:var(--color-fill);font-weight:600}.nav-item-dropdown{align-items:center;display:inline-flex;position:relative}.dropdown-arrow{opacity:.7;transition:transform .2s}.nav-item-dropdown:hover .dropdown-arrow{opacity:1;transform:rotate(180deg)}.dropdown-menu{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);opacity:0;visibility:hidden;z-index:100;flex-direction:column;gap:.2rem;min-width:210px;padding:.5rem;transition:all .18s cubic-bezier(.16,1,.3,1);display:flex;position:absolute;top:calc(100% + 4px);left:0;transform:translateY(6px);box-shadow:0 10px 25px -5px #00000026,0 8px 10px -6px #0000001a}.nav-item-dropdown:hover .dropdown-menu,.nav-item-dropdown:focus-within .dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}.dropdown-link{border-radius:var(--radius);color:var(--color-text-secondary);white-space:nowrap;padding:.5rem .75rem;font-size:.875rem;font-weight:500;transition:all .15s;display:block}.dropdown-link:hover{background-color:var(--color-fill);color:var(--color-text)}.dropdown-link.active{color:var(--color-brand);background-color:var(--color-fill);font-weight:600}.header-actions{align-items:center;gap:.6rem;display:flex}.theme-toggle-btn{border-radius:var(--radius);background:var(--color-surface);border:1px solid var(--color-border);width:38px;height:38px;color:var(--color-text-secondary);cursor:pointer;justify-content:center;align-items:center;transition:all .2s;display:inline-flex}.theme-toggle-btn:hover{color:var(--color-text);border-color:var(--color-border-strong);background:var(--color-fill)}.theme-toggle-btn svg{width:18px;height:18px}.site-main{flex:1;padding-block:2.5rem 4rem}#emdash-toolbar,[data-emdash-toolbar],.emdash-toolbar,.emdash-inline-ui-toolbar,.emdash-img-popover{visibility:hidden!important;pointer-events:none!important;display:none!important}@media (width<=640px){.site-brand{font-size:.95rem}.site-container{padding-inline:.85rem}.site-nav{flex-wrap:wrap;justify-content:center;row-gap:.3rem}.site-nav .nav-link{flex:42%;justify-content:center;padding:.5rem .4rem}.site-header .header-inner{height:auto;min-height:54px;padding-block:.4rem}}.gdpr-banner{z-index:1000;background:var(--color-surface,#fff);color:var(--color-text,#0f172a);border-bottom:1px solid var(--color-border,#e2e8f0);text-align:center;flex-direction:column;align-items:center;gap:.75rem;padding:.85rem 1.25rem;font-size:.8125rem;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 2px 12px #00000014}.gdpr-banner .gdpr-text a{color:var(--color-brand,#0284c7);text-decoration:underline}.gdpr-text{max-width:860px}.gdpr-actions{flex-shrink:0;justify-content:center;gap:.75rem;display:flex}.gdpr-btn{padding:var(--btn-pad-y) var(--btn-pad-x);border-radius:var(--btn-radius);font-weight:var(--btn-font-weight);font-size:var(--btn-font-size);border:1px solid var(--color-border);cursor:pointer;line-height:1.2}.gdpr-btn-primary{background:var(--color-brand,#0284c7);border-color:var(--color-brand,#0284c7);color:#fff}.gdpr-btn-secondary{background:var(--color-fill-strong,#e8e8e8);color:var(--color-text,#0f172a);border-color:var(--color-border-strong,#d4d4d4)}.site-footer{border-top:1px solid var(--color-border,#e5e5e5);color:var(--color-text-secondary,#64748b);margin-top:1rem;padding:1.25rem 0 2rem;font-size:.75rem}.footer-inner{text-align:center;flex-direction:column;align-items:center;gap:.5rem;display:flex}.footer-legal{flex-wrap:wrap;justify-content:center;align-items:center;gap:.35rem 1rem;display:flex}.footer-legal a,.site-footer button#gdpr-revoke-btn{color:var(--color-text-secondary,#64748b);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, currentColor 40%, transparent);text-decoration-color:color-mix(in srgb, currentColor 40%, transparent);font:inherit;cursor:pointer;border-radius:var(--radius,8px);background:0 0;border:none;padding:.15rem .3rem}.footer-legal a:hover,.footer-legal a:focus-visible,.site-footer button#gdpr-revoke-btn:hover,.site-footer button#gdpr-revoke-btn:focus-visible{color:var(--color-text,#0f172a)}.footer-note{color:var(--color-muted,#8f8f8f);margin:0;font-size:.7rem}.footer-version{color:var(--color-muted,#8f8f8f);font-variant-numeric:tabular-nums;margin:0;font-size:.7rem}
