@font-face{font-family:Berkeley Mono;src:url(./berk-mono.BRAwytwU.woff2) format("woff2");font-weight:100 1000;font-display:swap}:root{--bg: #0d1414;--bg-soft: #0f1818;--bg-soft-2: #121d1d;--bg-card: #121d1d;--bg-side: #0a1010;--bg-elev: #111919;--fg: #cbd5d0;--fg-prose: #d8e1dc;--dim: rgba(203, 213, 208, .64);--ghost: rgba(203, 213, 208, .24);--rule: rgba(203, 213, 208, .12);--rule-hi: rgba(203, 213, 208, .22);--accent: #d4ff5e;--accent-dim: rgba(212, 255, 94, .35);--accent-soft: rgba(212, 255, 94, .16);--warm: #ffc89e;--cool: #9ee6ff;--violet: #c9b6ff;--ink-rgb: 203, 213, 208;--accent-rgb: 212, 255, 94;--warm-rgb: 255, 200, 158;--scrim: rgba(0, 0, 0, .55);--shadow: rgba(0, 0, 0, .45);--wash: rgba(255, 255, 255, .025);--c-site: #9ee6ff;--c-recipe: #ffc89e;--mono: "Berkeley Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--serif: "Source Serif 4", "Source Serif Pro", "Iowan Old Style", Georgia, serif;font-size:16px}[data-theme=light]{--bg: #f3efe6;--bg-tint: #ebe6da;--bg-soft: #ebe6da;--bg-soft-2: #e2dccd;--bg-card: #f8f4ee;--bg-side: #e9e3d6;--bg-elev: #f8f4ee;--fg: #1c1f1a;--fg-prose: #2a2d27;--dim: rgba(28, 31, 26, .64);--ghost: rgba(28, 31, 26, .26);--rule: rgba(28, 31, 26, .12);--rule-hi: rgba(28, 31, 26, .22);--accent: #3f5a14;--accent-dim: rgba(63, 90, 20, .42);--accent-soft: rgba(63, 90, 20, .18);--warm: #a8551c;--cool: #2f6d86;--violet: #6a4fb0;--wash: rgba(28, 31, 26, .025);--ink-rgb: 28, 31, 26;--accent-rgb: 63, 90, 20;--warm-rgb: 168, 85, 28;--scrim: rgba(28, 31, 26, .32);--shadow: rgba(28, 31, 26, .16);--c-site: #8a6a2c;--c-recipe: #8a4f1c}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--fg)}html{scroll-behavior:smooth}body{font-family:var(--mono);font-size:13px;line-height:1.55;letter-spacing:.01em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}:root{--twp-background: #fcfcfc;--twp-boolean: #a37acc;--twp-comment: #adaeb1;--twp-identifier: #5c6166;--twp-keyword: #fa8532;--twp-number: #a37acc;--twp-operator: #f2a191;--twp-punctuation: #5c6166;--twp-regex: #4cbf99;--twp-string: #86b300;--twp-template: #86b300;--twp-attribute: #5c6166;--twp-builtin: #f07171;--twp-class_name: #22a4e6;--twp-constant: #5c6166;--twp-decorator: #e59645;--twp-lifetime: #22a4e6;--twp-namespace: #22a4e6;--twp-parameter: #a37acc;--twp-property: #55b4d4;--twp-type: #55b4d4;--twp-variable: #5c6166;--twp-variant: #22a4e6;--twp-function: #eba400;--twp-attr_name: #eba400;--twp-doctype: #55b4d4;--twp-entity: #4cbf99;--twp-tag_name: #55b4d4;--twp-css_variable: #5c6166;--twp-selector: #22a4e6;--twp-selector_class: #eba400;--twp-selector_id: #eba400;--twp-selector_pseudo: #4cbf99;--twp-unit: #fa8532;--twp-changed: #478acc;--twp-changed_marker: #478acc;--twp-deleted: #ff7383;--twp-deleted_marker: #ff7383;--twp-hash: #c594c5;--twp-heading: #86b300;--twp-inserted: #6cbf43;--twp-inserted_marker: #6cbf43;--twp-label: #c594c5;--twp-autolink: #55b4d4;--twp-bold: #f07171;--twp-code: #f2a191;--twp-code_block: #5c6166;--twp-code_language: #5c6166;--twp-italic: #f07171;--twp-link_text: #55b4d4;--twp-strike: #5c6166;--twp-url: #55b4d4;--twp-url_link: #5c6166;--twp-url_title: #55b4d4;--twp-autolink_open: #5c6166;--twp-autolink_close: #5c6166;--twp-bold_open: #f07171;--twp-bold_close: #f07171;--twp-code_open: #f2a191;--twp-code_close: #f2a191;--twp-italic_open: #f07171;--twp-italic_close: #f07171;--twp-link_text_open: #5c6166;--twp-link_text_close: #5c6166;--twp-strike_open: #5c6166;--twp-strike_close: #5c6166;--twp-blockquote_marker: #4cbf99;--twp-code_fence: #adaeb1;--twp-front_matter_marker: #5c6166;--twp-heading_marker: #86b300;--twp-hr: #adaeb1;--twp-list_marker: #eba400;--twp-task_marker: #5c6166;--twp-escape: #4cbf99;--twp-hard_break: #5c6166;--twp-expression: #fa8532;--twp-svelte_block: #fa8532;--twp-svelte_directive: #fa8532;--twp-output: #5c6166;--twp-prompt: #5c6166;--twp-prompt_prefix: #5c6166;--twp-carriage_return: inherit;--twp-newline: inherit;--twp-space: inherit;--twp-tab: inherit;--twp-raw_code_block: #5c6166;--twp-raw_front_matter: #5c6166;--twp-raw_json: #5c6166;--twp-raw_markup: #5c6166;--twp-raw_script: #5c6166;--twp-raw_shell: #5c6166;--twp-raw_style: #5c6166;--twp-raw_svelte_expression: #5c6166;--twp-string_escape: #4cbf99;--twp-format: #fa8532;--twp-attr_sigil: #5c6166;--twp-bit: #86b300;--twp-array_table_header: #5c6166;--twp-datetime: #4cbf99;--twp-block_scalar_header: #fa8532;--twp-directive: #fa8532;--twp-doc_marker: #5c6166;--twp-plain_scalar: #86b300;--twp-tag: #fa8532;--twp-null: #a37acc;--twp-autolink-text-decoration: underline;--twp-blockquote_marker-font-style: italic;--twp-bold-font-weight: bold;--twp-bold_open-font-weight: bold;--twp-bold_close-font-weight: bold;--twp-comment-font-style: italic;--twp-heading-font-weight: bold;--twp-heading_marker-font-weight: bold;--twp-hr-font-weight: bold;--twp-italic-font-style: italic;--twp-italic_open-font-style: italic;--twp-italic_close-font-style: italic;--twp-url-text-decoration: underline}.dark{--twp-background: #10141c;--twp-boolean: #d2a6ff;--twp-comment: #5a6673;--twp-identifier: #bfbdb6;--twp-keyword: #ff8f40;--twp-number: #d2a6ff;--twp-operator: #f29668;--twp-punctuation: #bfbdb6;--twp-regex: #95e6cb;--twp-string: #aad94c;--twp-template: #aad94c;--twp-attribute: #bfbdb6;--twp-builtin: #f07178;--twp-class_name: #59c2ff;--twp-constant: #bfbdb6;--twp-decorator: #e6c08a;--twp-lifetime: #59c2ff;--twp-namespace: #59c2ff;--twp-parameter: #d2a6ff;--twp-property: #39bae6;--twp-type: #39bae6;--twp-variable: #bfbdb6;--twp-variant: #59c2ff;--twp-function: #ffb454;--twp-attr_name: #ffb454;--twp-doctype: #39bae6;--twp-entity: #95e6cb;--twp-tag_name: #39bae6;--twp-css_variable: #bfbdb6;--twp-selector: #59c2ff;--twp-selector_class: #ffb454;--twp-selector_id: #ffb454;--twp-selector_pseudo: #95e6cb;--twp-unit: #ff8f40;--twp-changed: #73b8ff;--twp-changed_marker: #73b8ff;--twp-deleted: #f26d78;--twp-deleted_marker: #f26d78;--twp-hash: #c594c5;--twp-heading: #aad94c;--twp-inserted: #70bf56;--twp-inserted_marker: #70bf56;--twp-label: #c594c5;--twp-autolink: #39bae6;--twp-bold: #f07178;--twp-code: #f29668;--twp-code_block: #bfbdb6;--twp-code_language: #bfbdb6;--twp-italic: #f07178;--twp-link_text: #39bae6;--twp-strike: #bfbdb6;--twp-url: #39bae6;--twp-url_link: #bfbdb6;--twp-url_title: #39bae6;--twp-autolink_open: #bfbdb6;--twp-autolink_close: #bfbdb6;--twp-bold_open: #f07178;--twp-bold_close: #f07178;--twp-code_open: #f29668;--twp-code_close: #f29668;--twp-italic_open: #f07178;--twp-italic_close: #f07178;--twp-link_text_open: #bfbdb6;--twp-link_text_close: #bfbdb6;--twp-strike_open: #bfbdb6;--twp-strike_close: #bfbdb6;--twp-blockquote_marker: #95e6cb;--twp-code_fence: #5a6673;--twp-front_matter_marker: #bfbdb6;--twp-heading_marker: #aad94c;--twp-hr: #5a6673;--twp-list_marker: #ffb454;--twp-task_marker: #bfbdb6;--twp-escape: #95e6cb;--twp-hard_break: #bfbdb6;--twp-expression: #ff8f40;--twp-svelte_block: #ff8f40;--twp-svelte_directive: #ff8f40;--twp-output: #bfbdb6;--twp-prompt: #bfbdb6;--twp-prompt_prefix: #bfbdb6;--twp-carriage_return: inherit;--twp-newline: inherit;--twp-space: inherit;--twp-tab: inherit;--twp-raw_code_block: #bfbdb6;--twp-raw_front_matter: #bfbdb6;--twp-raw_json: #bfbdb6;--twp-raw_markup: #bfbdb6;--twp-raw_script: #bfbdb6;--twp-raw_shell: #bfbdb6;--twp-raw_style: #bfbdb6;--twp-raw_svelte_expression: #bfbdb6;--twp-string_escape: #95e6cb;--twp-format: #ff8f40;--twp-attr_sigil: #bfbdb6;--twp-bit: #aad94c;--twp-array_table_header: #bfbdb6;--twp-datetime: #95e6cb;--twp-block_scalar_header: #ff8f40;--twp-directive: #ff8f40;--twp-doc_marker: #bfbdb6;--twp-plain_scalar: #aad94c;--twp-tag: #ff8f40;--twp-null: #d2a6ff;--twp-autolink-text-decoration: underline;--twp-blockquote_marker-font-style: italic;--twp-bold-font-weight: bold;--twp-bold_open-font-weight: bold;--twp-bold_close-font-weight: bold;--twp-comment-font-style: italic;--twp-heading-font-weight: bold;--twp-heading_marker-font-weight: bold;--twp-hr-font-weight: bold;--twp-italic-font-style: italic;--twp-italic_open-font-style: italic;--twp-italic_close-font-style: italic;--twp-url-text-decoration: underline}.twinkleplop .boolean{color:var(--twp-boolean)}.twinkleplop .comment{color:var(--twp-comment);font-style:var(--twp-comment-font-style)}.twinkleplop .identifier{color:var(--twp-identifier)}.twinkleplop .keyword{color:var(--twp-keyword)}.twinkleplop .number{color:var(--twp-number)}.twinkleplop .operator{color:var(--twp-operator)}.twinkleplop .punctuation{color:var(--twp-punctuation)}.twinkleplop .regex{color:var(--twp-regex)}.twinkleplop .string{color:var(--twp-string)}.twinkleplop .template{color:var(--twp-template)}.twinkleplop .attribute{color:var(--twp-attribute)}.twinkleplop .builtin{color:var(--twp-builtin)}.twinkleplop .class_name{color:var(--twp-class_name)}.twinkleplop .constant{color:var(--twp-constant)}.twinkleplop .decorator{color:var(--twp-decorator)}.twinkleplop .lifetime{color:var(--twp-lifetime)}.twinkleplop .namespace{color:var(--twp-namespace)}.twinkleplop .parameter{color:var(--twp-parameter)}.twinkleplop .property{color:var(--twp-property)}.twinkleplop .type{color:var(--twp-type)}.twinkleplop .variable{color:var(--twp-variable)}.twinkleplop .variant{color:var(--twp-variant)}.twinkleplop .function{color:var(--twp-function)}.twinkleplop .attr_name{color:var(--twp-attr_name)}.twinkleplop .doctype{color:var(--twp-doctype)}.twinkleplop .entity{color:var(--twp-entity)}.twinkleplop .tag_name{color:var(--twp-tag_name)}.twinkleplop .css_variable{color:var(--twp-css_variable)}.twinkleplop .selector{color:var(--twp-selector)}.twinkleplop .selector_class{color:var(--twp-selector_class)}.twinkleplop .selector_id{color:var(--twp-selector_id)}.twinkleplop .selector_pseudo{color:var(--twp-selector_pseudo)}.twinkleplop .unit{color:var(--twp-unit)}.twinkleplop .changed{color:var(--twp-changed)}.twinkleplop .changed_marker{color:var(--twp-changed_marker)}.twinkleplop .deleted{color:var(--twp-deleted)}.twinkleplop .deleted_marker{color:var(--twp-deleted_marker)}.twinkleplop .hash{color:var(--twp-hash)}.twinkleplop .heading{color:var(--twp-heading);font-weight:var(--twp-heading-font-weight)}.twinkleplop .inserted{color:var(--twp-inserted)}.twinkleplop .inserted_marker{color:var(--twp-inserted_marker)}.twinkleplop .label{color:var(--twp-label)}.twinkleplop .autolink{color:var(--twp-autolink);text-decoration:var(--twp-autolink-text-decoration)}.twinkleplop .bold{color:var(--twp-bold);font-weight:var(--twp-bold-font-weight)}.twinkleplop .code{color:var(--twp-code)}.twinkleplop .code_block{color:var(--twp-code_block)}.twinkleplop .code_language{color:var(--twp-code_language)}.twinkleplop .italic{color:var(--twp-italic);font-style:var(--twp-italic-font-style)}.twinkleplop .link_text{color:var(--twp-link_text)}.twinkleplop .strike{color:var(--twp-strike)}.twinkleplop .url{color:var(--twp-url);text-decoration:var(--twp-url-text-decoration)}.twinkleplop .url_link{color:var(--twp-url_link)}.twinkleplop .url_title{color:var(--twp-url_title)}.twinkleplop .autolink_open{color:var(--twp-autolink_open)}.twinkleplop .autolink_close{color:var(--twp-autolink_close)}.twinkleplop .bold_open{color:var(--twp-bold_open);font-weight:var(--twp-bold_open-font-weight)}.twinkleplop .bold_close{color:var(--twp-bold_close);font-weight:var(--twp-bold_close-font-weight)}.twinkleplop .code_open{color:var(--twp-code_open)}.twinkleplop .code_close{color:var(--twp-code_close)}.twinkleplop .italic_open{color:var(--twp-italic_open);font-style:var(--twp-italic_open-font-style)}.twinkleplop .italic_close{color:var(--twp-italic_close);font-style:var(--twp-italic_close-font-style)}.twinkleplop .link_text_open{color:var(--twp-link_text_open)}.twinkleplop .link_text_close{color:var(--twp-link_text_close)}.twinkleplop .strike_open{color:var(--twp-strike_open)}.twinkleplop .strike_close{color:var(--twp-strike_close)}.twinkleplop .blockquote_marker{color:var(--twp-blockquote_marker);font-style:var(--twp-blockquote_marker-font-style)}.twinkleplop .code_fence{color:var(--twp-code_fence)}.twinkleplop .front_matter_marker{color:var(--twp-front_matter_marker)}.twinkleplop .heading_marker{color:var(--twp-heading_marker);font-weight:var(--twp-heading_marker-font-weight)}.twinkleplop .hr{color:var(--twp-hr);font-weight:var(--twp-hr-font-weight)}.twinkleplop .list_marker{color:var(--twp-list_marker)}.twinkleplop .task_marker{color:var(--twp-task_marker)}.twinkleplop .escape{color:var(--twp-escape)}.twinkleplop .hard_break{color:var(--twp-hard_break)}.twinkleplop .expression{color:var(--twp-expression)}.twinkleplop .svelte_block{color:var(--twp-svelte_block)}.twinkleplop .svelte_directive{color:var(--twp-svelte_directive)}.twinkleplop .output{color:var(--twp-output)}.twinkleplop .prompt{color:var(--twp-prompt)}.twinkleplop .prompt_prefix{color:var(--twp-prompt_prefix)}.twinkleplop .raw_code_block{color:var(--twp-raw_code_block)}.twinkleplop .raw_front_matter{color:var(--twp-raw_front_matter)}.twinkleplop .raw_json{color:var(--twp-raw_json)}.twinkleplop .raw_markup{color:var(--twp-raw_markup)}.twinkleplop .raw_script{color:var(--twp-raw_script)}.twinkleplop .raw_shell{color:var(--twp-raw_shell)}.twinkleplop .raw_style{color:var(--twp-raw_style)}.twinkleplop .raw_svelte_expression{color:var(--twp-raw_svelte_expression)}.twinkleplop .string_escape{color:var(--twp-string_escape)}.twinkleplop .format{color:var(--twp-format)}.twinkleplop .attr_sigil{color:var(--twp-attr_sigil)}.twinkleplop .bit{color:var(--twp-bit)}.twinkleplop .array_table_header{color:var(--twp-array_table_header)}.twinkleplop .datetime{color:var(--twp-datetime)}.twinkleplop .block_scalar_header{color:var(--twp-block_scalar_header)}.twinkleplop .directive{color:var(--twp-directive)}.twinkleplop .doc_marker{color:var(--twp-doc_marker)}.twinkleplop .plain_scalar{color:var(--twp-plain_scalar)}.twinkleplop .tag{color:var(--twp-tag)}.twinkleplop .null{color:var(--twp-null)}.twinkleplop .space,.twinkleplop .tab,.twinkleplop .newline{white-space:pre}:root[data-theme=light]{--twp-boolean: #855cac;--twp-comment: #6e6f72;--twp-keyword: #bc4c00;--twp-number: #855cac;--twp-operator: #a45a4c;--twp-regex: #007f5d;--twp-string: #527b00;--twp-template: #527b00;--twp-builtin: #bf4549;--twp-class_name: #0075b4;--twp-decorator: #a65c00;--twp-lifetime: #0075b4;--twp-namespace: #0075b4;--twp-parameter: #855cac;--twp-property: #007896;--twp-type: #007896;--twp-variant: #0075b4;--twp-function: #a36000;--twp-attr_name: #a36000;--twp-doctype: #007896;--twp-entity: #007f5d;--twp-tag_name: #007896;--twp-selector: #0075b4;--twp-selector_class: #a36000;--twp-selector_id: #a36000;--twp-selector_pseudo: #007f5d;--twp-unit: #bc4c00;--twp-changed: #2e72b2;--twp-changed_marker: #2e72b2;--twp-deleted: #c43d53;--twp-deleted_marker: #c43d53;--twp-hash: #8c5e8d;--twp-heading: #527b00;--twp-inserted: #2b7e00;--twp-inserted_marker: #2b7e00;--twp-label: #8c5e8d;--twp-autolink: #007896;--twp-bold: #bf4549;--twp-code: #a45a4c;--twp-italic: #bf4549;--twp-link_text: #007896;--twp-url: #007896;--twp-url_title: #007896;--twp-bold_open: #bf4549;--twp-bold_close: #bf4549;--twp-code_open: #a45a4c;--twp-code_close: #a45a4c;--twp-italic_open: #bf4549;--twp-italic_close: #bf4549;--twp-blockquote_marker: #007f5d;--twp-code_fence: #6e6f72;--twp-heading_marker: #527b00;--twp-hr: #6e6f72;--twp-list_marker: #a36000;--twp-escape: #007f5d;--twp-expression: #bc4c00;--twp-svelte_block: #bc4c00;--twp-svelte_directive: #bc4c00;--twp-string_escape: #007f5d;--twp-format: #bc4c00;--twp-bit: #527b00;--twp-datetime: #007f5d;--twp-block_scalar_header: #bc4c00;--twp-directive: #bc4c00;--twp-plain_scalar: #527b00;--twp-tag: #bc4c00;--twp-null: #855cac}:root[data-theme=light] .prose pre.twinkleplop{background:var(--bg-card)}.chrome.svelte-14v55c2{position:sticky;top:0;z-index:40;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 40px 62px;font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:var(--dim);background:linear-gradient(to bottom,var(--bg) 60%,transparent)}.brand.svelte-14v55c2{display:flex;align-items:center;gap:10px;color:var(--fg)}.brand.svelte-14v55c2 .home:where(.svelte-14v55c2){display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent}.brand.svelte-14v55c2 b:where(.svelte-14v55c2){font-weight:500}.brand.svelte-14v55c2 .sep:where(.svelte-14v55c2){color:var(--dim)}.brand.svelte-14v55c2 .section:where(.svelte-14v55c2){color:var(--dim);text-decoration:none;transition:color .15s}.brand.svelte-14v55c2 a.section:where(.svelte-14v55c2):hover{color:var(--fg)}.brand.svelte-14v55c2 pngwn-penguin:where(.svelte-14v55c2){display:inline-block;flex:none;width:calc(28px * 94 / 86);height:28px;aspect-ratio:94 / 86;margin:-6px 6px -8px 0;color:var(--fg)}.brand.svelte-14v55c2 pngwn-penguin.failed:where(.svelte-14v55c2){color:#ff5e62}nav.svelte-14v55c2{display:flex;gap:22px}nav.svelte-14v55c2 a:where(.svelte-14v55c2){color:var(--dim);text-decoration:none;transition:color .15s}nav.svelte-14v55c2 a:where(.svelte-14v55c2):hover{color:var(--fg)}nav.svelte-14v55c2 a.active:where(.svelte-14v55c2){color:var(--accent)}.theme-toggle.svelte-14v55c2{background:none;border:none;padding:0 0 0 6px;margin:0;cursor:pointer;color:var(--dim);font:inherit;font-size:13px;line-height:1;letter-spacing:0;transition:color .15s}.theme-toggle.svelte-14v55c2:hover{color:var(--fg)}@media(max-width:640px){.chrome.svelte-14v55c2{padding:18px 22px 54px}nav.svelte-14v55c2{gap:14px}}
