:root,[data-theme=light]{--bg:#F6F3EE;--surface:#FFFFFF;--surface-sunken:#F6F3EE;--line:#E7E1D9;--control-border:#8E867D;--ink:#1B1815;--ink-soft:#3E3934;--ink-muted:#6B645C;--primary:#1B1815;--primary-pressed:#000000;--on-primary:#FFFFFF;--primary-text:#0F6A45;--primary-tint:#EFEAE3;--on-primary-tint:#1B1815;--accent:#0F6A45;--on-accent:#FFFFFF;--warning:#A15C07;--warning-tint:#FDF3E3;--on-warning-tint:#8A4E05;--critical:#A3200F;--critical-tint:#FDECEA;--on-critical-tint:#8A1C0F;--info:#1D5FD1;--info-tint:#E8F0FD;--on-info-tint:#1A4FAE;--focus:#1D5FD1;--scanner:#171512;--scanner-frame:#4ADE80;--money:#0F6A45;--money-pressed:#0A4E33}[data-theme=dark]{--bg:#14120F;--surface:#26221E;--surface-sunken:#2C2723;--line:#3B3530;--control-border:#7A726A;--ink:#F2F4F0;--ink-soft:#D7D0C8;--ink-muted:#A9A097;--primary:#0F6A45;--primary-pressed:#0C5C3C;--on-primary:#FFFFFF;--primary-text:#76B592;--primary-tint:#1C2B22;--on-primary-tint:#A7CDB5;--accent:#E5A32A;--on-accent:#1B1815;--warning:#F0A64A;--warning-tint:#3A2A12;--on-warning-tint:#F5BD72;--critical:#F07A6A;--critical-tint:#3E1A16;--on-critical-tint:#F59A8D;--info:#7EA8F2;--info-tint:#172843;--on-info-tint:#A9C5F7;--focus:#7EA8F2;--scanner:#0A0C0B;--scanner-frame:#4ADE80;--money:#0F6A45;--money-pressed:#0A4E33}:root{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:22px;--radius-pill:999px;--tap-min:44px;--control-h:52px;--button-h:56px;--button-h-lg:60px;--tabbar-h:78px;--shadow-card:0 1px 3px rgba(18,20,23,0.08);--shadow-fab:0 6px 16px rgba(11,122,75,0.28);--font-sans:"Instrument Sans",system-ui,sans-serif;--font-mono:"IBM Plex Mono",ui-monospace,monospace;--web-paper:#FFFFFF;--web-ink:#1B1815;--web-ink-soft:#3E3934;--web-slate:#6B645C;--web-sand:#F6F3EE;--web-stone:#EFEAE3;--web-stone-light:#F3EEE7;--web-line:#E7E1D9;--web-line-strong:#D2CBC2;--web-control-border:#8E867D;--web-money:#0F6A45;--web-money-pressed:#0A4E33;--web-money-soft:#76B592;--web-money-mist:#A7CDB5;--web-money-tint:#B9DCC9;--web-mint:#EDF1EC;--web-mint-light:#E9EFE6;--web-saffron:#E5A32A;--web-saffron-ink:#8A5A00;--web-saffron-tint:#E9C48A;--web-dark-ground:#26221E;--web-dark-line:#3B3530;--web-dark-line-soft:#302B27;--web-dark-text:#ECE7E1;--web-dark-text-soft:#D7D0C8;--web-dark-text-muted:#A9A097;--web-neutral-muted:#B3B8B1;--web-neutral-grey:#6B7280;--web-near-white:#FAFBF9;--web-black:#000000;--web-info-ink:#1F4E8C;--web-info-tint:#EAF1FB;--web-info-tint-soft:#E7EEF9;--web-info-deep:#24527A;--web-warning-tint:#FDF3E3;--web-on-warning-tint:#8A4E05;--web-orange:#C2410C;--web-critical-tint:#FDECEA;--web-critical-tint-soft:#FCEBE8;--web-critical-ink:#8F1D14;--web-critical-deep:#8E2A1E;--web-violet:#6B3FA0;--web-chat-ground:#ECE5DD;--web-chat-bubble:#DCF8C6;--web-chat-bubble-alt:#DCF7C5;--web-chat-header:#075E54;--web-chat-accent:#128C7E}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/instrument-sans-latin-ext-400.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Instrument Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/instrument-sans-latin-400.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/instrument-sans-latin-ext-500.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Instrument Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/instrument-sans-latin-500.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/instrument-sans-latin-ext-600.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Instrument Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/instrument-sans-latin-600.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/instrument-sans-latin-ext-700.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Instrument Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/instrument-sans-latin-700.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,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-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-latin-ext-400.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-latin-400.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,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-weight:600;font-display:swap;src:url(/fonts/ibm-plex-mono-latin-ext-600.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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-weight:600;font-display:swap;src:url(/fonts/ibm-plex-mono-latin-600.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}body{margin:0;font-family:var(--font-sans);color:var(--ink);background:var(--surface);-webkit-font-smoothing:antialiased}a{color:#0f6a45}a:hover{color:#0a4e33}html{scroll-behavior:smooth}.sf-icon{display:block;flex-shrink:0}.sf-narrow{display:none}.sf-dots{background-image:radial-gradient(rgba(27,24,21,.09) 1.2px,transparent 0)}.sf-dots,.sf-dots-dark{background-size:24px 24px}.sf-dots-dark{background-image:radial-gradient(rgba(255,255,255,.08) 1.2px,transparent 0)}.sf-shift{margin-left:110px}.sf-bento{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-gap:20px;gap:20px}details>summary{list-style:none}details>summary::-webkit-details-marker{display:none}details[open] .sf-plus{transform:rotate(45deg)}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}@media (max-width:900px){.sf-g2{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:22px 12px!important}.sf-g2 figcaption>span:last-child{display:none}.sf-g2 figcaption>span{font-size:14px!important}.sf-wide{display:none!important}.sf-narrow{display:inline-flex!important}.sf-shift{margin-left:0}.sf-hide-sm{display:none!important}.sf-bento>*{grid-column:span 12!important}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}label:has(>input[type=search]):focus-within{outline:3px solid var(--focus);outline-offset:2px}