@charset "UTF-8";html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}:root{color-scheme:light;--bg: #f5f3fa;--surface: #ffffff;--surface-container: #efecf7;--surface-container-high: #e5e0f1;--on-surface: #15131d;--on-surface-variant: #57536a;--outline: rgb(21 19 29 / .08);--outline-strong: rgb(21 19 29 / .16);--primary: #5a3cf0;--on-primary: #ffffff;--primary-container: #e6deff;--on-primary-container: #22106b;--secondary-container: #ffe0eb;--on-secondary-container: #5b0f33;--tertiary-container: #ffe8c9;--on-tertiary-container: #4a2a00;--glass: rgb(255 255 255 / .55);--glass-strong: rgb(255 255 255 / .82);--card-bg: rgb(255 255 255 / .74);--code-bg: #fbf9f6;--code-frame-bg: #17141f;--aurora-1: rgb(124 92 255 / .3);--aurora-2: rgb(255 92 150 / .2);--aurora-3: rgb(255 168 76 / .22);--aurora-4: rgb(56 196 240 / .18);--grain-opacity: .045;--shadow-sm: 0 1px 2px rgb(40 24 100 / .05), 0 6px 20px -8px rgb(40 24 100 / .1);--shadow-lg: 0 2px 6px rgb(40 24 100 / .05), 0 30px 60px -24px rgb(72 40 190 / .32);--shadow-glow: 0 12px 32px -12px rgb(110 60 240 / .65);--gradient-brand: linear-gradient(120deg, #6d4dff 0%, #b44cff 32%, #ff4f9a 66%, #ff9950 100%);--gradient-button: linear-gradient(120deg, #5a3cf0 0%, #8e36e8 40%, #d12f78 75%, #5a3cf0 100%);--font-display: "Syne", ui-sans-serif, system-ui, sans-serif;--font-body: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--r-xs: 8px;--r-s: 12px;--r-m: 20px;--r-l: 28px;--r-xl: 40px;--r-full: 999px;--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-emphasized: cubic-bezier(.2, 0, 0, 1);--safe-top: env(safe-area-inset-top, 0px);--safe-x: max(env(safe-area-inset-left, 0px), env(safe-area-inset-right, 0px));--gutter: max(16px, var(--safe-x));--header-offset: calc(88px + var(--safe-top))}@media(min-width:640px){:root{--gutter: max(24px, var(--safe-x))}}@media(min-width:992px){:root{--gutter: max(32px, var(--safe-x))}}:root{--primary-color: var(--on-surface);--secondary-color: var(--on-surface-variant);--font-family-default: var(--font-display)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg: #0c0a13;--surface: #17141f;--surface-container: #1f1b2b;--surface-container-high: #2a2439;--on-surface: #f3f0fb;--on-surface-variant: #aaa5bf;--outline: rgb(255 255 255 / .08);--outline-strong: rgb(255 255 255 / .18);--primary: #b8a8ff;--on-primary: #1c0a5e;--primary-container: #33258a;--on-primary-container: #e8e1ff;--secondary-container: #5a1837;--on-secondary-container: #ffd9e6;--tertiary-container: #4b3210;--on-tertiary-container: #ffe3bd;--glass: rgb(23 20 31 / .5);--glass-strong: rgb(23 20 31 / .8);--card-bg: rgb(27 23 38 / .72);--code-bg: #13111b;--code-frame-bg: #0f0d16;--aurora-1: rgb(108 76 255 / .32);--aurora-2: rgb(255 64 140 / .18);--aurora-3: rgb(255 140 56 / .13);--aurora-4: rgb(40 180 240 / .16);--grain-opacity: .07;--shadow-sm: 0 1px 2px rgb(0 0 0 / .4), 0 8px 24px -10px rgb(0 0 0 / .5);--shadow-lg: 0 2px 6px rgb(0 0 0 / .4), 0 30px 70px -24px rgb(0 0 0 / .8);--shadow-glow: 0 12px 36px -12px rgb(140 90 255 / .7)}}:root[data-theme=dark]{color-scheme:dark;--bg: #0c0a13;--surface: #17141f;--surface-container: #1f1b2b;--surface-container-high: #2a2439;--on-surface: #f3f0fb;--on-surface-variant: #aaa5bf;--outline: rgb(255 255 255 / .08);--outline-strong: rgb(255 255 255 / .18);--primary: #b8a8ff;--on-primary: #1c0a5e;--primary-container: #33258a;--on-primary-container: #e8e1ff;--secondary-container: #5a1837;--on-secondary-container: #ffd9e6;--tertiary-container: #4b3210;--on-tertiary-container: #ffe3bd;--glass: rgb(23 20 31 / .5);--glass-strong: rgb(23 20 31 / .8);--card-bg: rgb(27 23 38 / .72);--code-bg: #13111b;--code-frame-bg: #0f0d16;--aurora-1: rgb(108 76 255 / .32);--aurora-2: rgb(255 64 140 / .18);--aurora-3: rgb(255 140 56 / .13);--aurora-4: rgb(40 180 240 / .16);--grain-opacity: .07;--shadow-sm: 0 1px 2px rgb(0 0 0 / .4), 0 8px 24px -10px rgb(0 0 0 / .5);--shadow-lg: 0 2px 6px rgb(0 0 0 / .4), 0 30px 70px -24px rgb(0 0 0 / .8);--shadow-glow: 0 12px 36px -12px rgb(140 90 255 / .7)}.btn{--btn-h: 56px;position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:10px;height:var(--btn-h);padding:0 28px;border:0;border-radius:var(--r-full);overflow:hidden;font:700 16px/1 var(--font-display);letter-spacing:-.005em;white-space:nowrap;text-decoration:none;color:var(--on-surface);background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:border-radius .45s var(--ease-spring),scale .45s var(--ease-spring),rotate .45s var(--ease-spring),box-shadow .35s ease,background-position .8s var(--ease-emphasized),background-color .25s ease,color .25s ease}.btn:after{content:"";position:absolute;inset:0;z-index:-1;background:currentColor;opacity:0;transition:opacity .2s ease}.btn:hover:after{opacity:.08}.btn:active:after{opacity:.14}.btn:active{scale:.96;border-radius:calc(var(--btn-h) * .32)}.btn svg{flex-shrink:0;width:20px;height:20px;transition:translate .45s var(--ease-spring),rotate .45s var(--ease-spring)}.btn:hover .icon-arrow{translate:4px 0}.btn:hover .icon-arrow-left{translate:-4px 0}.btn i[class^=icon-]:before{margin:0}.btn-filled{color:#fff;background-image:var(--gradient-button);background-size:220% 100%;background-position:0% 50%;box-shadow:var(--shadow-glow),inset 0 1px #ffffff40}.btn-filled:link,.btn-filled:visited{color:#fff}.btn-filled:hover{background-position:100% 50%}.btn-tonal{background-color:var(--primary-container);color:var(--on-primary-container)}.btn-tonal:link,.btn-tonal:visited{color:var(--on-primary-container)}.btn-surface{background-color:var(--surface-container);color:var(--on-surface)}.btn-surface:link,.btn-surface:visited{color:var(--on-surface)}.btn-outline{box-shadow:inset 0 0 0 1.5px var(--outline-strong)}.btn-sm{--btn-h: 44px;padding:0 20px;font-size:15px}.btn-lg{--btn-h: 60px;padding:0 32px;font-size:17px}@media(min-width:992px){.btn-lg{--btn-h: 64px;padding:0 36px;font-size:18px}}.btn-icon{width:var(--btn-h);padding:0}.chip{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 14px;border-radius:var(--r-full);background:var(--surface-container);color:var(--on-surface);font:600 13px/1 var(--font-display);letter-spacing:.02em;white-space:nowrap}.chip-dot:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--gradient-brand)}.chip-live:before{content:"";width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 #22c55e99}@media(prefers-reduced-motion:no-preference){.chip-live:before{animation:chip-pulse 2s ease-out infinite}}.chip-glass{background:var(--glass-strong);box-shadow:inset 0 0 0 1px var(--outline),var(--shadow-sm);backdrop-filter:blur(16px) saturate(1.6);-webkit-backdrop-filter:blur(16px) saturate(1.6)}@keyframes chip-pulse{70%{box-shadow:0 0 0 8px #22c55e00}to{box-shadow:0 0 #22c55e00}}.card{position:relative;border-radius:var(--r-l);background:var(--card-bg);box-shadow:var(--shadow-sm),inset 0 0 0 1px var(--outline)}.card:before{content:"";position:absolute;inset:0;padding:1.5px;border-radius:inherit;background:var(--gradient-brand);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .4s ease;pointer-events:none}.card:after{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(420px circle at var(--mx, 50%) var(--my, 0%),color-mix(in srgb,var(--primary) 14%,transparent),transparent 60%);opacity:0;transition:opacity .4s ease;pointer-events:none}.card-interactive{transition:translate .55s var(--ease-spring),box-shadow .4s ease}.card-interactive:hover{translate:0 -6px;box-shadow:var(--shadow-lg),inset 0 0 0 1px var(--outline)}.card-interactive:hover:before,.card-interactive:hover:after{opacity:1}.gradient-text{background:var(--gradient-brand);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}@media(prefers-reduced-motion:no-preference){.gradient-text{animation:gradient-flow 8s ease-in-out infinite alternate}}@keyframes gradient-flow{to{background-position:100% 50%}}@media(prefers-reduced-motion:no-preference){@supports (animation-timeline: view()){.reveal{animation:reveal linear both;animation-timeline:view();animation-range:entry 0% entry 55%}}}@keyframes reveal{0%{opacity:0;transform:translateY(48px) scale(.96)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:no-preference){::view-transition-old(root){animation:.25s var(--ease-emphasized) both vt-fade-out}::view-transition-new(root){animation:.45s var(--ease-emphasized) both vt-fade-in}html.theme-transition::view-transition-old(root){animation:none}html.theme-transition::view-transition-new(root){animation:.7s var(--ease-emphasized) both theme-reveal}::view-transition-group(post-title),::view-transition-group(post-date){animation-duration:.55s;animation-timing-function:var(--ease-emphasized)}}html:not(.theme-transition) .vt-post h3,html:not(.theme-transition) .app-post-header h1{view-transition-name:post-title}html:not(.theme-transition) .vt-post time,html:not(.theme-transition) .app-post-meta time{view-transition-name:post-date}@media(prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}@keyframes vt-fade-out{to{opacity:0;transform:scale(.985)}}@keyframes vt-fade-in{0%{opacity:0;transform:translateY(16px)}}@keyframes theme-reveal{0%{clip-path:circle(0 at var(--vt-x, 100%) var(--vt-y, 0))}to{clip-path:circle(var(--vt-r, 150vmax) at var(--vt-x, 100%) var(--vt-y, 0))}}:root{--tok-fg: #3c3836;--tok-comment: #928374;--tok-keyword: #9d0006;--tok-punct: #7c6f64;--tok-tag: #b57614;--tok-number: #8f3f71;--tok-string: #79740e;--tok-selection: #d5c4a1}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--tok-fg: #ebdbb2;--tok-comment: #928374;--tok-keyword: #fb4934;--tok-punct: #a89984;--tok-tag: #fabd2f;--tok-number: #d3869b;--tok-string: #b8bb26;--tok-selection: #504945}}:root[data-theme=dark]{--tok-fg: #ebdbb2;--tok-comment: #928374;--tok-keyword: #fb4934;--tok-punct: #a89984;--tok-tag: #fabd2f;--tok-number: #d3869b;--tok-string: #b8bb26;--tok-selection: #504945}code,pre{text-transform:none}code[class*=language-],pre[class*=language-]{font-family:var(--font-mono);font-weight:400;color:var(--tok-fg);direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:1.6;tab-size:4;hyphens:none}pre[class*=language-] ::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,code[class*=language-]::selection{background:var(--tok-selection)}pre[class*=language-]{overflow:auto}.token.comment,.token.prolog,.token.cdata{color:var(--tok-comment);font-style:italic}.token.delimiter,.token.boolean,.token.keyword,.token.selector,.token.important,.token.atrule,.token.property,.token.constant,.token.variable,.token.deleted{color:var(--tok-keyword)}.token.operator,.token.punctuation,.token.attr-name,.token.attr-value,.token.attr-value .punctuation{color:var(--tok-punct)}.token.tag,.token.tag .punctuation,.token.doctype,.token.builtin,.token.function{color:var(--tok-tag)}.token.entity,.token.number,.token.symbol{color:var(--tok-number)}.token.string,.token.char,.token.regex,.token.url,.token.inserted{color:var(--tok-string)}.token.url{text-decoration:underline}.token.bold{font-weight:700}.token.italic{font-style:italic}.markdown-document{font-family:var(--font-body);font-size:17px;line-height:1.78;color:var(--on-surface-variant);overflow-wrap:break-word}@media(min-width:992px){.markdown-document{font-size:18px}}.markdown-document>:first-child{margin-top:0}.markdown-document>p:first-child:not(:has(>img)),.markdown-document>p:first-child:has(>img:only-child)+p{font-size:1.2em;line-height:1.6;color:var(--on-surface);margin-bottom:36px}.markdown-document h1,.markdown-document h2,.markdown-document h3,.markdown-document h4,.markdown-document h5,.markdown-document h6{font-family:var(--font-display);color:var(--on-surface);text-transform:none;text-wrap:balance;scroll-margin-top:calc(var(--header-offset) + 16px)}.markdown-document h1+p,.markdown-document h1+ul,.markdown-document h1+ol,.markdown-document h2+p,.markdown-document h2+ul,.markdown-document h2+ol,.markdown-document h3+p,.markdown-document h3+ul,.markdown-document h3+ol,.markdown-document h4+p,.markdown-document h4+ul,.markdown-document h4+ol,.markdown-document h5+p,.markdown-document h5+ul,.markdown-document h5+ol,.markdown-document h6+p,.markdown-document h6+ul,.markdown-document h6+ol{margin-top:0}.markdown-document h1,.markdown-document h2{font-size:clamp(26px,3.4vw,34px);font-weight:800;line-height:1.12;letter-spacing:-.03em;margin:clamp(64px,9vw,96px) 0 24px}.markdown-document h1:before,.markdown-document h2:before{content:"";display:block;width:44px;height:6px;margin-bottom:20px;border-radius:6px;background:var(--gradient-brand)}.markdown-document h1{font-size:clamp(28px,4vw,40px)}.markdown-document h3{font-size:clamp(21px,2.6vw,25px);font-weight:800;line-height:1.2;letter-spacing:-.025em;margin:56px 0 16px}.markdown-document:not(:has(>h1,>h2))>h3{font-size:clamp(26px,3.4vw,34px);font-weight:800;line-height:1.12;letter-spacing:-.03em;margin:clamp(64px,9vw,96px) 0 24px}.markdown-document:not(:has(>h1,>h2))>h3:before{content:"";display:block;width:44px;height:6px;margin-bottom:20px;border-radius:6px;background:var(--gradient-brand)}.markdown-document h4{font-size:20px;font-weight:700;line-height:1.3;letter-spacing:-.015em;margin:40px 0 12px}.markdown-document h5,.markdown-document h6{font-size:13px;font-weight:700;line-height:1.4;letter-spacing:.12em;text-transform:uppercase;color:var(--primary);margin:36px 0 12px}.markdown-document p{margin:0 0 26px}.markdown-document strong{font-weight:700;color:var(--on-surface)}.markdown-document em{color:var(--on-surface)}.markdown-document a{color:var(--primary);font-weight:500;text-decoration:underline;text-decoration-thickness:2px;text-decoration-color:color-mix(in srgb,var(--primary) 35%,transparent);text-underline-offset:3px;transition:text-decoration-color .2s ease,background-color .2s ease;border-radius:4px}.markdown-document a:hover{text-decoration-color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,transparent)}.markdown-document ul,.markdown-document ol{margin:0 0 28px;padding:0;list-style:none}.markdown-document ul li,.markdown-document ol li{position:relative;margin-bottom:12px}.markdown-document ul li>p,.markdown-document ol li>p{margin:0 0 8px}.markdown-document ul li>ul,.markdown-document ul li>ol,.markdown-document ol li>ul,.markdown-document ol li>ol{margin:12px 0 0}.markdown-document ul>li{padding-left:30px}.markdown-document ul>li:before{content:"";position:absolute;left:7px;top:.68em;width:8px;height:8px;border-radius:3px;background:var(--gradient-brand);rotate:45deg}.markdown-document ul ul>li:before{background:none;box-shadow:inset 0 0 0 2px var(--primary)}.markdown-document ol{counter-reset:md-item}.markdown-document ol>li{padding-left:44px;counter-increment:md-item}.markdown-document ol>li:before{content:counter(md-item);position:absolute;left:0;top:.1em;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--primary-container);color:var(--on-primary-container);font:700 13px/1 var(--font-display)}.markdown-document ol[start]{padding-left:28px;list-style:decimal}.markdown-document ol[start]>li{padding-left:6px}.markdown-document ol[start]>li:before{content:none}.markdown-document ol[start]>li::marker{font-family:var(--font-display);font-weight:700;color:var(--primary)}.markdown-document blockquote{position:relative;display:block;margin:44px 0;padding:56px 28px 28px;border-radius:var(--r-l);background:var(--surface-container);color:var(--on-surface);font-size:1.04em}@media(min-width:640px){.markdown-document blockquote{padding:32px 36px 32px 88px}}.markdown-document blockquote:before{content:"\201c";position:absolute;left:24px;top:16px;font:800 64px/1 var(--font-display);background:var(--gradient-brand);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}@media(min-width:640px){.markdown-document blockquote:before{left:30px;top:26px}}.markdown-document blockquote p{margin-bottom:16px}.markdown-document blockquote p:last-child{margin-bottom:0}.markdown-document .code-block{--tok-fg: #ebdbb2;--tok-comment: #928374;--tok-keyword: #fb4934;--tok-punct: #a89984;--tok-tag: #fabd2f;--tok-number: #d3869b;--tok-string: #b8bb26;--tok-selection: #504945;margin:36px 0;overflow:hidden;border-radius:var(--r-m);background:var(--code-frame-bg);box-shadow:0 24px 48px -24px #140a3c80,inset 0 0 0 1px #ffffff12}.markdown-document .code-block-bar{display:flex;align-items:center;gap:14px;height:44px;padding:0 10px 0 18px;background:#ffffff0a;box-shadow:inset 0 -1px #ffffff0f}.markdown-document .code-block-bar:before{content:"";flex-shrink:0;width:50px;height:12px;background:radial-gradient(circle at 6px 6px,#8a6bff 5px,transparent 5.5px),radial-gradient(circle at 25px 6px,#ff5f9e 5px,transparent 5.5px),radial-gradient(circle at 44px 6px,#ffa25c 5px,transparent 5.5px)}.markdown-document .code-block-lang{flex-grow:1;font:600 12px/1 var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:#ffffff80}.markdown-document .code-block-copy{height:30px;padding:0 14px;border:0;border-radius:var(--r-full);background:#ffffff14;color:#fffc;font:600 12px/1 var(--font-display);cursor:pointer;transition:background-color .2s ease,color .2s ease,scale .4s var(--ease-spring)}.markdown-document .code-block-copy:hover{background:#ffffff29;color:#fff}.markdown-document .code-block-copy:active{scale:.94}.markdown-document .code-block-copy.copied{background:#22c55e33;color:#86efac}.markdown-document .code-block pre{margin:0;padding:20px 22px 22px;border-radius:0;background:none;box-shadow:none;color:#e9e5f2}@media(min-width:992px){.markdown-document .code-block pre{padding:22px 26px 26px}}.markdown-document pre{max-width:100%;margin:36px 0;padding:20px 22px;overflow-x:auto;border-radius:var(--r-m);background:var(--code-bg);box-shadow:inset 0 0 0 1px var(--outline);font-size:14px;line-height:1.7}@media(min-width:992px){.markdown-document pre{font-size:14.5px}}.markdown-document pre code{padding:0;background:none;box-shadow:none;font-size:inherit;color:inherit}.markdown-document code{font-family:var(--font-mono);text-transform:none}.markdown-document :not(pre)>code{padding:.15em .45em;border-radius:7px;background:color-mix(in srgb,var(--primary) 10%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary) 16%,transparent);color:var(--on-primary-container);font-size:.84em;-webkit-box-decoration-break:clone;box-decoration-break:clone}.markdown-document img{display:block;width:100%;height:auto;margin:44px 0;border-radius:var(--r-l);box-shadow:var(--shadow-lg)}.markdown-document p:has(>img:only-child){margin:0}.markdown-document iframe{display:block;width:100%;height:auto;aspect-ratio:16/9;margin:44px 0;border:0;border-radius:var(--r-l);box-shadow:var(--shadow-lg)}.markdown-document hr{height:8px;width:64px;margin:64px auto;border:0;background:radial-gradient(circle at 4px 4px,#8a6bff 4px,transparent 4.5px),radial-gradient(circle at 32px 4px,#ff5f9e 4px,transparent 4.5px),radial-gradient(circle at 60px 4px,#ffa25c 4px,transparent 4.5px)}.markdown-document table{display:block;width:100%;overflow-x:auto;border-collapse:collapse;margin:36px 0;border-radius:var(--r-m);box-shadow:inset 0 0 0 1px var(--outline);font-size:15px}.markdown-document table th,.markdown-document table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--outline)}.markdown-document table th{font-family:var(--font-display);font-weight:700;color:var(--on-surface);background:var(--surface-container)}.markdown-document table tr:last-child td{border-bottom:0}@font-face{font-family:Syne;src:url(/assets/fonts/syne-variable.ttf) format("truetype-variations");font-style:normal;font-weight:100 800;font-display:swap}@font-face{font-family:fontello;src:url(/assets/fonts/fontello.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}html{background-color:var(--bg);overflow-x:clip;scroll-padding-top:calc(var(--header-offset) + 16px);-webkit-text-size-adjust:100%}body{position:relative;isolation:isolate;min-height:100vh;overflow-x:clip;font-family:var(--font-body);font-size:16px;line-height:1.65;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--on-surface-variant);background-color:var(--bg)}body:before{content:"";position:fixed;inset:-20vmax;z-index:-2;pointer-events:none;background:radial-gradient(38vmax 32vmax at 18% 12%,var(--aurora-1),transparent 70%),radial-gradient(34vmax 28vmax at 88% 18%,var(--aurora-2),transparent 70%),radial-gradient(42vmax 36vmax at 72% 88%,var(--aurora-3),transparent 70%),radial-gradient(30vmax 30vmax at 8% 78%,var(--aurora-4),transparent 70%)}@media(prefers-reduced-motion:no-preference){body:before{animation:aurora-drift 36s ease-in-out infinite alternate}}body:after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:var(--grain-opacity);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}@keyframes aurora-drift{0%{transform:translateZ(0) rotate(0) scale(1)}50%{transform:translate3d(4vmax,-3vmax,0) rotate(8deg) scale(1.08)}to{transform:translate3d(-3vmax,3vmax,0) rotate(-6deg) scale(1.02)}}::selection{background:var(--primary-container);color:var(--on-primary-container)}:focus-visible{outline:3px solid var(--primary);outline-offset:3px;border-radius:var(--r-xs)}h1,h2,h3,h4,h5,h6{margin:0;font-family:var(--font-display);color:var(--on-surface);text-wrap:balance}h1{font-size:clamp(44px,13vw,96px);font-weight:800;line-height:.95;letter-spacing:-.045em}@media(min-width:992px){h1{font-size:clamp(72px,7.2vw,116px)}}h2{font-size:clamp(32px,9.4vw,80px);font-weight:800;line-height:1;letter-spacing:-.04em}h3{font-size:clamp(24px,3vw,32px);font-weight:700;line-height:1.1;letter-spacing:-.02em}h4{font-size:clamp(20px,2.2vw,24px);font-weight:700;line-height:1.25;letter-spacing:-.015em}h5,h6{font-size:13px;font-weight:700;line-height:1.3}@media(min-width:1200px){h5,h6{font-size:14px}}h5.style2,h6.style2{letter-spacing:.14em;text-transform:uppercase}h6{color:var(--on-surface-variant)}p{text-wrap:pretty}blockquote{margin:0}div{box-sizing:border-box}a{cursor:pointer;color:inherit;text-decoration:none}img{max-width:100%}.container{width:min(100% - 2 * var(--gutter),1200px);margin:0 auto}i[class^=icon-]:before,i[class*=" icon-"]:before{font-family:fontello;font-style:normal;font-weight:400;speak:never;display:inline-block;text-decoration:inherit;width:1em;margin-right:.2em;text-align:center;font-variant:normal;text-transform:none;line-height:1em;margin-left:.2em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-github:before{content:"\f09b"}.icon-mail:before{content:"\f0e0"}.icon-linkedin:before{content:"\f0e1"}.icon-pdf:before{content:"\f1c1"}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
