@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/f4b234103afdc32a-s.197tvtifbphtu.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}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/0b60d5f95c5f3f76-s.2e115y8-hourl.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:Bricolage Grotesque;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/8056169c9d560660-s.p.41rroleoq1br7.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:Bricolage Grotesque;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/f4b234103afdc32a-s.197tvtifbphtu.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}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/0b60d5f95c5f3f76-s.2e115y8-hourl.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:Bricolage Grotesque;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/8056169c9d560660-s.p.41rroleoq1br7.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:Bricolage Grotesque;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(../media/f4b234103afdc32a-s.197tvtifbphtu.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}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(../media/0b60d5f95c5f3f76-s.2e115y8-hourl.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:Bricolage Grotesque;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(../media/8056169c9d560660-s.p.41rroleoq1br7.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:Bricolage Grotesque Fallback;src:local(Arial);ascent-override:88.21%;descent-override:25.61%;line-gap-override:0.0%;size-adjust:105.43%}._5KrDsq_className{font-family:Bricolage Grotesque,Bricolage Grotesque Fallback;font-style:normal}._5KrDsq_variable{--font-bricolage:"Bricolage Grotesque", "Bricolage Grotesque Fallback"}
@font-face{font-family:Figtree;font-style:normal;font-weight:400;font-display:swap;src:url(../media/4032351b19cb998e-s.19g-lkcx7iw64.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:Figtree;font-style:normal;font-weight:400;font-display:swap;src:url(../media/cb4b92673aedbbad-s.p.0-95eo-012xnf.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:Figtree;font-style:normal;font-weight:500;font-display:swap;src:url(../media/4032351b19cb998e-s.19g-lkcx7iw64.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:Figtree;font-style:normal;font-weight:500;font-display:swap;src:url(../media/cb4b92673aedbbad-s.p.0-95eo-012xnf.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:Figtree;font-style:normal;font-weight:600;font-display:swap;src:url(../media/4032351b19cb998e-s.19g-lkcx7iw64.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:Figtree;font-style:normal;font-weight:600;font-display:swap;src:url(../media/cb4b92673aedbbad-s.p.0-95eo-012xnf.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:Figtree;font-style:normal;font-weight:700;font-display:swap;src:url(../media/4032351b19cb998e-s.19g-lkcx7iw64.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:Figtree;font-style:normal;font-weight:700;font-display:swap;src:url(../media/cb4b92673aedbbad-s.p.0-95eo-012xnf.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:Figtree Fallback;src:local(Arial);ascent-override:94.32%;descent-override:24.82%;line-gap-override:0.0%;size-adjust:100.72%}._1jU2Qq_className{font-family:Figtree,Figtree Fallback;font-style:normal}._1jU2Qq_variable{--font-figtree:"Figtree", "Figtree Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/faab88e4be272d29-s.0rgnxg2b64rzs.woff2)format("woff2");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-weight:400;font-display:swap;src:url(../media/a45aa1001bf9176f-s.2vemzm0itqzfy.woff2)format("woff2");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-weight:400;font-display:swap;src:url(../media/41ba59f553543ecf-s.3cb5lpr2l6xud.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}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/67bba87670b402d1-s.1u30mmyq6lnsd.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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/d6c1ff7e86974212-s.p.40sczeszzbjw1.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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/49b1d53681a91a99-s.1yd4_i3e35931.woff2)format("woff2");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-weight:500;font-display:swap;src:url(../media/123d516c9baeb953-s.1qc6dx89jd2qv.woff2)format("woff2");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-weight:500;font-display:swap;src:url(../media/a74d2542cc4c775f-s.29yke99gs9qpn.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}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/7ac0b1cd3e695dd0-s.1i-sca43-qwng.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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/916cd8a3bde3edf8-s.p.0oace-s_gkfks.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:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e60f3e45d49b65c3-s.352ti9pm7m6qh.woff2)format("woff2");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-weight:600;font-display:swap;src:url(../media/1f5edaafc8393c36-s.0o-3_g79811ob.woff2)format("woff2");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-weight:600;font-display:swap;src:url(../media/f1c080d8717d5d0c-s.0ngr-xkgqz1kf.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}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/afc8e0e4a8c58d89-s.15orukf5wyxb5.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:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2880e9b87afbd5d9-s.p.226pwps5o-gq_.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:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}._4M7gaG_className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}._4M7gaG_variable{--font-plex-mono:"IBM Plex Mono", "IBM Plex Mono Fallback"}
:root{--bg:#e8ede7;--surface:#fff;--surface-2:#f2f5f0;--fg:#162019;--muted:#566559;--line:#d6ded4;--accent:#1b6e44;--accent-ink:#fff;--accent-soft:#daede0;--sun:#8a5300;--sun-fill:#d99a2b;--sun-soft:#fbeacb;--warn:#a8361f;--warn-soft:#f8dcd4;--knob:#fff;--perf:#aab6ac;--scrim:#0a140e6b;--f-red:#c9452f;--f-orange:#e0812f;--f-yellow:#e8b63a;--f-green:#4e9a55;--f-leaf:#1f6e44;--f-pale:#c4da96;--f-brown:#93602f;--f-bean:#3b2a22;--f-cream:#fbf7ea;--f-tan:#d8b07a;--f-purple:#8a4b7e;--f-steel:#9aa69f;--f-blue:#4c7fa3;--f-meat:#a5473a;--f-edge:#b4ad97;--f-hi:#fff;--font-display:var(--font-bricolage), "Avenir Next", system-ui, sans-serif;--font-body:var(--font-figtree), system-ui, -apple-system, "Segoe UI", sans-serif;--font-num:var(--font-plex-mono), ui-monospace, "SF Mono", Menlo, monospace;--radius:12px;--tabbar-h:64px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0b100d;--surface:#141b16;--surface-2:#1b241e;--fg:#e3ebe4;--muted:#98a79c;--line:#2a362e;--accent:#55c78c;--accent-ink:#06170d;--accent-soft:#173525;--sun:#f2b552;--sun-fill:#d99a2b;--sun-soft:#3a2a10;--warn:#f2846d;--warn-soft:#3d1b14;--knob:#e3ebe4;--perf:#435247;--scrim:#0009;--f-red:#e0604b;--f-orange:#ee9550;--f-yellow:#efc55a;--f-green:#6cb672;--f-leaf:#479e68;--f-pale:#b4ce86;--f-brown:#b27b47;--f-bean:#7a5446;--f-cream:#eeeadc;--f-tan:#d0a970;--f-purple:#b377a9;--f-steel:#8c9990;--f-blue:#6e9dc2;--f-meat:#c25e4e;--f-edge:#878170;--f-hi:#fff;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0b100d;--surface:#141b16;--surface-2:#1b241e;--fg:#e3ebe4;--muted:#98a79c;--line:#2a362e;--accent:#55c78c;--accent-ink:#06170d;--accent-soft:#173525;--sun:#f2b552;--sun-fill:#d99a2b;--sun-soft:#3a2a10;--warn:#f2846d;--warn-soft:#3d1b14;--knob:#e3ebe4;--perf:#435247;--scrim:#0009;--f-red:#e0604b;--f-orange:#ee9550;--f-yellow:#efc55a;--f-green:#6cb672;--f-leaf:#479e68;--f-pale:#b4ce86;--f-brown:#b27b47;--f-bean:#7a5446;--f-cream:#eeeadc;--f-tan:#d0a970;--f-purple:#b377a9;--f-steel:#8c9990;--f-blue:#6e9dc2;--f-meat:#c25e4e;--f-edge:#878170;--f-hi:#fff;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--bg);color:var(--fg);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;font-size:16px;line-height:1.45}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--accent)}img,svg{max-width:100%}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}[hidden]{display:none!important}.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}.app{background:var(--surface);max-width:480px;min-height:100dvh;padding-top:env(safe-area-inset-top,0px);flex-direction:column;margin:0 auto;display:flex}.page{padding-block:12px 32px;padding-left:max(18px, env(safe-area-inset-left,0px));padding-right:max(18px, env(safe-area-inset-right,0px));flex-direction:column;flex:1;gap:18px;display:flex}.page.with-tabs{padding-bottom:calc(var(--tabbar-h) + 32px + env(safe-area-inset-bottom,0px))}@media (min-width:520px){.app{box-shadow:0 0 0 1px var(--line)}}.num{font-family:var(--font-num);font-variant-numeric:tabular-nums}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0;font-size:12px;font-weight:700}.muted{color:var(--muted)}.title{font-family:var(--font-display);letter-spacing:-.015em;text-wrap:balance;margin:0;font-size:28px;font-weight:700;line-height:1.12}.hero-title{font-family:var(--font-display);letter-spacing:-.025em;text-wrap:balance;margin:0;font-size:34px;font-weight:800;line-height:1.04}.section-title{font-family:var(--font-display);margin:0;font-size:18px;font-weight:700}.lede{color:var(--muted);margin:0;font-size:15px}small,.small{font-size:14px}.stack{flex-direction:column;gap:10px;display:flex}.stack-lg{flex-direction:column;gap:18px;display:flex}.row{align-items:center;gap:10px;display:flex}.split{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.row2{grid-template-columns:1fr 1fr;gap:10px;display:grid}.row3{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.btn{appearance:none;border-radius:var(--radius);background:var(--accent);min-height:50px;color:var(--accent-ink);cursor:pointer;text-align:center;border:0;justify-content:center;align-items:center;gap:8px;width:100%;padding:13px 16px;font-size:16px;font-weight:700;text-decoration:none;transition:transform 80ms,opacity .15s;display:inline-flex}.btn:active{transform:scale(.985)}.btn:disabled,.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed}.btn.ghost{background:var(--surface-2);color:var(--fg)}.btn.line{border:1px solid var(--line);color:var(--fg);background:0 0}.btn.sm{border-radius:10px;width:auto;min-height:44px;padding:8px 14px;font-size:14px;font-weight:600}.btn svg{flex:none;width:20px;height:20px}.link{min-height:44px;color:var(--accent);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;padding:0 4px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.iconbtn{border:1px solid var(--line);background:var(--surface);cursor:pointer;width:44px;height:44px;color:var(--fg);border-radius:50%;flex:none;place-items:center;display:grid}.iconbtn svg{width:20px;height:20px}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.label{color:var(--muted);font-size:14px;font-weight:600}.input{border:1px solid var(--line);background:var(--surface-2);border-radius:10px;width:100%;min-width:0;min-height:50px;padding:12px 14px;font-size:16px;font-weight:500}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.input[aria-invalid=true]{border-color:var(--warn)}.input.code{font-family:var(--font-num);letter-spacing:.5em;text-align:center;padding-left:.5em;font-size:30px;font-weight:600}.hint{color:var(--muted);margin:0;font-size:14px}.error{color:var(--warn);margin:0;font-size:14px;font-weight:600}.notice{background:var(--accent-soft);color:var(--fg);border-radius:10px;margin:0;padding:12px 14px;font-size:14px}.notice.warn{background:var(--warn-soft)}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:999px;align-items:center;gap:6px;min-height:44px;padding:8px 14px;font-size:15px;font-weight:500;display:inline-flex}.chip[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);font-weight:600}.chip:has(input:checked){background:var(--accent-soft);border-color:var(--accent);font-weight:600}.chip input{opacity:0;pointer-events:none;position:absolute}.chip:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.segmented{border:1px solid var(--line);border-radius:10px;display:flex;overflow:hidden}.segmented label{min-height:44px;color:var(--muted);cursor:pointer;text-align:center;flex:1;place-items:center;padding:6px 8px;font-size:14px;font-weight:600;display:grid}.segmented label+label{border-left:1px solid var(--line)}.segmented input{opacity:0;pointer-events:none;position:absolute}.segmented label:has(input:checked){background:var(--fg);color:var(--surface)}.segmented label:has(input:checked).out{background:var(--warn)}.segmented label:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:-2px}.toggle{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.toggle:last-child{border-bottom:0}.toggle>div{min-width:0}.toggle b{font-weight:600;display:block}.toggle small{color:var(--muted)}.switch{flex:none;width:48px;height:30px;position:relative}.switch input{opacity:0;cursor:pointer;z-index:1;margin:0;position:absolute;inset:-7px -2px}.switch span{background:var(--line);border-radius:99px;transition:background .15s;position:absolute;inset:0}.switch span:after{content:"";background:var(--knob);border-radius:50%;width:22px;height:22px;transition:transform .15s;position:absolute;top:4px;left:4px}.switch input:checked+span{background:var(--accent)}.switch input:checked+span:after{transform:translate(18px)}.switch input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}.card{background:var(--surface-2);border-radius:16px;flex-direction:column;gap:10px;padding:16px;display:flex}.card.flat{gap:0;padding-block:4px}.badge{background:var(--sun-soft);color:var(--sun);white-space:nowrap;border-radius:99px;align-items:center;gap:4px;padding:3px 9px;font-size:13px;font-weight:700;display:inline-flex}.badge.green{background:var(--accent-soft);color:var(--accent)}.badge.grey{background:var(--surface-2);color:var(--muted)}.stepper{gap:4px;display:flex}.stepper i{background:var(--line);border-radius:2px;flex:1;height:4px}.stepper i.on{background:var(--accent)}.list{flex-direction:column;display:flex}.item{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:12px 0;display:flex}.item:last-child{border-bottom:0}.item .grow{flex:1;min-width:0}.item b{font-weight:600;display:block}.item small{color:var(--muted);display:block}.ticket{background:var(--surface-2);border-radius:4px 4px 0 0;flex-direction:column;gap:10px;margin-bottom:10px;padding:16px 16px 14px;display:flex;position:relative}.ticket:after{content:"";background:conic-gradient(from -45deg at 50% 100%, var(--surface-2) 90deg, transparent 0) 0 0/14px 100% repeat-x;height:8px;position:absolute;top:100%;left:0;right:0}.tk-head{border-bottom:1px dashed var(--perf);justify-content:space-between;align-items:baseline;gap:10px;padding-bottom:8px;display:flex}.total{font-family:var(--font-num);font-variant-numeric:tabular-nums;letter-spacing:-.03em;font-size:34px;font-weight:600;line-height:1}.ln{align-items:baseline;gap:8px;min-width:0;display:flex}.lead{border-bottom:2px dotted var(--perf);flex:1;min-width:16px;transform:translateY(-4px)}.bar{background:var(--line);border-radius:99px;height:10px;display:flex;overflow:hidden}.bar span{height:100%;display:block}.seg-food{background:var(--accent)}.seg-home{background:var(--sun-fill)}.gtile{background:var(--surface-2);border-radius:10px;flex:none;place-items:center;width:44px;height:44px;display:grid}.card .gtile,.ticket .gtile{background:var(--surface)}.gtile svg{width:32px;height:32px;display:block}.gtile.lg{border-radius:12px;width:56px;height:56px}.gtile.lg svg{width:42px;height:42px}.plate{flex:none;width:56px;height:56px;display:block}.plate svg{width:100%;height:100%;display:block}.plate.lg{width:96px;height:96px}.plate.photo{background:var(--f-cream);box-shadow:0 0 0 1px var(--f-edge), 0 2px 6px #16201929;border-radius:50%;padding:3px}.plate.photo img{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.plate.photo.lg{padding:5px}.pl{fill:var(--surface);stroke:var(--line);stroke-width:1px}.pl-gz{fill:none;stroke-width:2px}.pl-in{fill:none;stroke:var(--line);stroke-width:1px}.gz1{stroke:var(--accent)}.gz2{stroke:var(--sun-fill)}.gz3{stroke:var(--warn)}.gz4{stroke:var(--muted)}.gR{fill:var(--f-red)}.gO{fill:var(--f-orange)}.gY{fill:var(--f-yellow)}.gG{fill:var(--f-green)}.gL{fill:var(--f-leaf)}.gV{fill:var(--f-pale)}.gB{fill:var(--f-brown)}.gD{fill:var(--f-bean)}.gT{fill:var(--f-tan)}.gP{fill:var(--f-purple)}.gS{fill:var(--f-steel)}.gU{fill:var(--f-blue)}.gM{fill:var(--f-meat)}.gC{fill:var(--f-cream);stroke:var(--f-edge);stroke-width:.8px}.gk{stroke:var(--f-edge);stroke-width:.8px}.gH{fill:var(--f-hi);fill-opacity:.4}.gX{fill:none;stroke:var(--f-edge);stroke-width:1px;stroke-linecap:round}.gXl{fill:none;stroke:var(--f-hi);stroke-opacity:.5;stroke-width:1px;stroke-linecap:round}.gGs{fill:none;stroke:var(--f-green);stroke-width:1.4px}.sheet-scrim{background:var(--scrim);z-index:40;justify-content:center;align-items:flex-end;animation:.18s fade;display:flex;position:fixed;inset:0}.sheet{background:var(--surface);width:100%;max-width:480px;padding:10px 20px calc(20px + env(safe-area-inset-bottom,0px));border-radius:22px 22px 0 0;flex-direction:column;gap:14px;animation:.22s rise;display:flex;box-shadow:0 -12px 40px -16px #00000059}.sheet .grab{background:var(--line);border-radius:3px;align-self:center;width:40px;height:5px;margin-bottom:4px}.sheet-mark{background:var(--accent);width:56px;height:56px;color:var(--accent-ink);border-radius:14px;place-items:center;display:grid}.sheet-mark svg{width:30px;height:30px}.steps{flex-direction:column;gap:8px;margin:0;padding-left:22px;display:flex}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.tabbar{z-index:20;background:var(--surface);border-top:1px solid var(--line);width:100%;max-width:480px;padding:6px 6px calc(8px + env(safe-area-inset-bottom,0px));display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.tabbar a{min-height:52px;color:var(--muted);border-radius:10px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;font-size:12px;font-weight:600;text-decoration:none;display:flex}.tabbar a svg{width:24px;height:24px}.tabbar a[aria-current=page]{color:var(--accent)}.toast{left:50%;bottom:calc(var(--tabbar-h) + 20px + env(safe-area-inset-bottom,0px));background:var(--fg);width:calc(100% - 32px);max-width:448px;color:var(--surface);z-index:50;border-radius:12px;padding:13px 16px;font-size:15px;position:fixed;transform:translate(-50%)}.brandmark{align-items:center;gap:10px;display:flex}.brandmark .logo{background:var(--accent);width:42px;height:42px;color:var(--accent-ink);border-radius:12px;place-items:center;display:grid}.brandmark .logo svg{width:24px;height:24px}.brandmark span{font-family:var(--font-display);font-size:22px;font-weight:800}.promise{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.promise li{grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;display:grid}.plates{justify-content:space-between;gap:6px;display:flex}.plates .plate{aspect-ratio:1;flex:0 56px;width:auto;min-width:0;height:auto}.divider{color:var(--muted);align-items:center;gap:12px;font-size:14px;display:flex}.divider:before,.divider:after{content:"";background:var(--line);flex:1;height:1px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}:root{--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--dur-fast:.16s;--dur:.32s;--dur-slow:.52s}@keyframes pop{0%{opacity:0;transform:scale(.6)}70%{opacity:1;transform:scale(1.06)}to{transform:scale(1)}}@keyframes fill-x{0%{transform:scaleX(0)}}@keyframes draw{to{stroke-dashoffset:0}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-8deg)}75%{transform:rotate(8deg)}}@keyframes slide-up-sheet{0%{transform:translateY(100%)}}.rise{animation:rise var(--dur-slow) var(--ease-out) both;animation-delay:calc(var(--i,0) * 45ms)}.pop{animation:pop var(--dur-slow) var(--ease-spring) both;animation-delay:calc(var(--i,0) * 60ms)}.bar span{transform-origin:0;animation:fill-x .9s var(--ease-out) both .12s}.check-draw path{stroke-dasharray:24;stroke-dashoffset:24px;animation:draw .42s var(--ease-out) forwards 80ms}.skeleton{background:linear-gradient(90deg, var(--surface-2) 25%, var(--line) 50%, var(--surface-2) 75%);background-size:200% 100%;border-radius:12px;animation:1.4s linear infinite shimmer}.sheet{animation:slide-up-sheet var(--dur) var(--ease-spring)}.press{transition:transform var(--dur-fast) var(--ease-out), background-color var(--dur-fast) ease, border-color var(--dur-fast) ease, box-shadow var(--dur-fast) ease}.press:active{transform:scale(.97)}.chip,.iconbtn,.meal-row,.segmented label,.tabbar a{transition:transform var(--dur-fast) var(--ease-out), background-color var(--dur-fast) ease, color var(--dur-fast) ease, border-color var(--dur-fast) ease}.chip:active,.iconbtn:active,.meal-row:active{transform:scale(.96)}.tabbar a[aria-current=page] svg{animation:pop var(--dur) var(--ease-spring)}::view-transition-old(root){animation-duration:var(--dur)}::view-transition-new(root){animation-duration:var(--dur)}::view-transition-old(.page-forward){animation:var(--dur-fast) ease-in both vt-out-left}::view-transition-new(.page-forward){animation:var(--dur) var(--ease-out) both vt-in-right}::view-transition-old(.page-back){animation:var(--dur-fast) ease-in both vt-out-right}::view-transition-new(.page-back){animation:var(--dur) var(--ease-out) both vt-in-left}::view-transition-group(.morph){animation-duration:.42s;animation-timing-function:var(--ease-out)}::view-transition-group(.tabbar){animation:none}::view-transition-group(.budgetbar){animation:none}@keyframes vt-out-left{to{opacity:0;transform:translate(-24px)}}@keyframes vt-in-right{0%{opacity:0;transform:translate(32px)}}@keyframes vt-out-right{to{opacity:0;transform:translate(24px)}}@keyframes vt-in-left{0%{opacity:0;transform:translate(-32px)}}.screen-head{align-items:center;gap:10px;min-height:48px;display:flex}.screen-head .grow{flex:1;min-width:0}.days{gap:6px;display:flex}.day{border:1px solid var(--line);background:var(--surface);min-width:0;min-height:60px;color:var(--fg);text-align:center;border-radius:14px;flex-direction:column;flex:1 0 0;justify-content:center;align-items:center;gap:0;padding:8px 0;text-decoration:none;display:flex}.day small{color:var(--muted);font-size:12px;font-weight:600}.day b{font-family:var(--font-display);font-size:19px;line-height:1.1}.day[aria-current=date] small{color:var(--accent)}.day[aria-pressed=true],.day[aria-current=page]{background:var(--fg);color:var(--surface);border-color:var(--fg)}.day[aria-pressed=true] small,.day[aria-current=page] small{color:inherit;opacity:.8}.meals{flex-direction:column;gap:10px;display:flex}.meal-row{border:1px solid var(--line);background:var(--surface);border-radius:16px;align-items:center;gap:12px;padding:10px 6px 10px 10px;display:flex}.meal-row>a{min-width:0;color:inherit;flex:1;align-items:center;gap:12px;text-decoration:none;display:flex}.meal-row .grow{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.meal-row b{font-size:16px;font-weight:600;line-height:1.25}.meal-row small{color:var(--muted);font-size:13px}.meal-row .price{font-family:var(--font-num);white-space:nowrap;font-size:14px;font-weight:600}.budgetbar{width:calc(100% - 24px);max-width:456px;left:50%;bottom:calc(var(--tabbar-h) + 14px + env(safe-area-inset-bottom,0px));z-index:19;background:var(--fg);color:var(--surface);view-transition-name:budgetbar;view-transition-class:budgetbar;border-radius:16px;align-items:center;gap:12px;padding:10px 14px;text-decoration:none;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 12px 30px -14px #00000073}.budgetbar .total{color:var(--surface);font-size:22px}.budgetbar small{color:var(--surface);opacity:.75;font-size:13px}.budgetbar .bar{background:color-mix(in srgb, var(--surface) 25%, transparent);height:6px}.page.with-bar{padding-bottom:calc(var(--tabbar-h) + 110px + env(safe-area-inset-bottom,0px))}.tabbar{view-transition-name:tabbar;view-transition-class:tabbar}.recipe-hero{align-items:center;gap:16px;display:flex}.dish-banner{flex-direction:column;gap:6px;margin:0;display:flex}.dish-banner img{aspect-ratio:3/2;object-fit:cover;border-radius:var(--radius);background:var(--surface-2);width:100%;height:auto;display:block}.dish-banner figcaption{color:var(--muted);overflow-wrap:anywhere;font-size:11px}.dish-banner figcaption a{color:inherit}.credits{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.credits li{grid-template-columns:56px minmax(0,1fr);align-items:center;gap:12px;display:grid}.credits small{color:var(--muted);overflow-wrap:anywhere;display:block}.tiles{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.tile{background:var(--surface);border-radius:12px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.tile b{font-family:var(--font-num);font-size:18px;font-weight:600}.tile small{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:600}.numbered{counter-reset:step;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.numbered li{counter-increment:step;grid-template-columns:30px minmax(0,1fr);gap:10px;display:grid}.numbered li:before{content:counter(step);background:var(--accent-soft);width:30px;height:30px;color:var(--accent);font-weight:700;font-family:var(--font-num);border-radius:50%;place-items:center;font-size:14px;display:grid}.src{white-space:nowrap;border-radius:6px;padding:2px 8px;font-size:12px;font-weight:700}.src.lista{background:var(--accent-soft);color:var(--accent)}.src.casa{background:var(--surface);color:var(--muted);border:1px solid var(--line)}.aisle{border-bottom:1px dashed var(--perf);justify-content:space-between;align-items:baseline;gap:10px;padding-block:14px 8px;display:flex}.line{border-bottom:1px solid var(--line);grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:4px 12px;padding:12px 0;display:grid}.line:last-child{border-bottom:0}.line .full{flex-wrap:wrap;grid-column:2/-1;align-items:center;gap:6px;display:flex}.line b{font-weight:600;display:block}.line small{color:var(--muted);font-size:13px;display:block}.line .price{font-family:var(--font-num);text-align:right;font-weight:600}.line.had b{color:var(--muted);text-decoration:line-through}.packs{flex-wrap:wrap;gap:6px;display:flex}.pk{border:1px solid var(--line);background:var(--surface);min-height:40px;font-family:var(--font-num);cursor:pointer;border-radius:10px;padding:6px 10px;font-size:13px}.pk[aria-pressed=true],.pk[aria-checked=true]{border-color:var(--accent);background:var(--accent-soft);font-weight:600}.callout{border:1px dashed var(--sun-fill);border-radius:14px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.callout .eyebrow{color:var(--sun)}.macro{flex-direction:column;gap:5px;display:flex}.macro .bar{height:8px}.option-card{border:1px solid var(--line);background:var(--surface);color:inherit;text-align:left;cursor:pointer;width:100%;font:inherit;border-radius:16px;align-items:center;gap:12px;padding:12px 14px;text-decoration:none;display:flex}.option-card.best{border-color:var(--accent);background:var(--accent-soft)}.option-card .grow{flex:1;min-width:0}.ckb{border:2px solid var(--line);background:var(--surface);cursor:pointer;width:30px;height:30px;color:var(--accent-ink);border-radius:9px;flex:none;place-items:center;padding:0;display:grid}.ckb[aria-pressed=true]{background:var(--accent);border-color:var(--accent)}.ckb svg{width:18px;height:18px}.chart{width:100%;height:auto;display:block}.ch-grid{stroke:var(--line);stroke-width:1px}.ch-line{stroke:var(--accent);fill:none;stroke-width:2.5px;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:1000;stroke-dashoffset:1000px;animation:draw 1.2s var(--ease-out) forwards}.ch-area{fill:var(--accent-soft)}.ch-goal{stroke:var(--sun-fill);stroke-width:1.5px;stroke-dasharray:4 4}.ch-txt{fill:var(--muted);font-family:var(--font-num);font-size:10px}.ch-dot{fill:var(--surface);stroke:var(--accent);stroke-width:2px}.scan-stage{background:var(--surface-2);border-radius:18px;min-height:260px;display:grid;position:relative;overflow:hidden}.scan-empty{color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:24px;display:flex}.scan-grid{grid-template-columns:1fr 1fr;gap:4px;display:grid}.scan-grid img{aspect-ratio:3/4;object-fit:cover;width:100%;display:block}.scan-grid img:only-child{aspect-ratio:4/3;grid-column:1/-1}.scan-line{background:var(--accent);height:3px;box-shadow:0 0 16px 5px color-mix(in srgb, var(--accent) 55%, transparent);animation:1.6s linear infinite scan-move;position:absolute;left:0;right:0}@keyframes scan-move{0%{top:0}to{top:100%}}
