@font-face{font-family:Sora;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/sora-latin-ext-600-normal-Cue1zdhl.woff2) format("woff2"),url(/assets/sora-latin-ext-600-normal-DLOJK0Ta.woff) format("woff");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:Sora;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/sora-latin-600-normal-Cdg4DaK0.woff2) format("woff2"),url(/assets/sora-latin-600-normal-1_7fyUAY.woff) format("woff");unicode-range:U+0000-00FF,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:Sora;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/sora-latin-ext-700-normal-DM0oy5s8.woff2) format("woff2"),url(/assets/sora-latin-ext-700-normal-Oc7uZIYt.woff) format("woff");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:Sora;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/sora-latin-700-normal-9waGdLWo.woff2) format("woff2"),url(/assets/sora-latin-700-normal-BKPfQAnC.woff) format("woff");unicode-range:U+0000-00FF,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:Sora;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/sora-latin-ext-800-normal-YDFYE6t9.woff2) format("woff2"),url(/assets/sora-latin-ext-800-normal-BvAfeed7.woff) format("woff");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:Sora;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/sora-latin-800-normal-2tKLL3qT.woff2) format("woff2"),url(/assets/sora-latin-800-normal-c3Huklug.woff) format("woff");unicode-range:U+0000-00FF,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:Nunito Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-sans-cyrillic-ext-600-normal-CVjnjZn6.woff2) format("woff2"),url(/assets/nunito-sans-cyrillic-ext-600-normal-DZXkk6dX.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-sans-cyrillic-600-normal-D4TuIAT6.woff2) format("woff2"),url(/assets/nunito-sans-cyrillic-600-normal-CKMyzy87.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-sans-vietnamese-600-normal-DD7cNabE.woff2) format("woff2"),url(/assets/nunito-sans-vietnamese-600-normal-BW3IEr32.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-sans-latin-ext-600-normal-nHO2odcJ.woff2) format("woff2"),url(/assets/nunito-sans-latin-ext-600-normal-DEh-VjuY.woff) format("woff");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:Nunito Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-sans-latin-600-normal-BtVRvDNj.woff2) format("woff2"),url(/assets/nunito-sans-latin-600-normal-DLks-Kj1.woff) format("woff");unicode-range:U+0000-00FF,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:Nunito Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-sans-cyrillic-ext-700-normal-GO46tfsI.woff2) format("woff2"),url(/assets/nunito-sans-cyrillic-ext-700-normal-Cqve7k0J.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-sans-cyrillic-700-normal-BJ2iHHyS.woff2) format("woff2"),url(/assets/nunito-sans-cyrillic-700-normal-DG2UZxR9.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-sans-vietnamese-700-normal-CZwaiz_e.woff2) format("woff2"),url(/assets/nunito-sans-vietnamese-700-normal-BwTSkH1V.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-sans-latin-ext-700-normal-DBq_Pukt.woff2) format("woff2"),url(/assets/nunito-sans-latin-ext-700-normal-jHN8vCOt.woff) format("woff");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:Nunito Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-sans-latin-700-normal-CICRJDmU.woff2) format("woff2"),url(/assets/nunito-sans-latin-700-normal-CLVG92B9.woff) format("woff");unicode-range:U+0000-00FF,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:Nunito Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-sans-cyrillic-ext-800-normal-suUH8DVf.woff2) format("woff2"),url(/assets/nunito-sans-cyrillic-ext-800-normal-DlIrhRQ2.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-sans-cyrillic-800-normal-COys2OwR.woff2) format("woff2"),url(/assets/nunito-sans-cyrillic-800-normal-x7mxdBjZ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-sans-vietnamese-800-normal-CfdX2BhI.woff2) format("woff2"),url(/assets/nunito-sans-vietnamese-800-normal-hO2TqS3m.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-sans-latin-ext-800-normal-DWckPAf3.woff2) format("woff2"),url(/assets/nunito-sans-latin-ext-800-normal-DG0lbXwA.woff) format("woff");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:Nunito Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-sans-latin-800-normal-MgCk9Q3Y.woff2) format("woff2"),url(/assets/nunito-sans-latin-800-normal-DOf_K5Iw.woff) format("woff");unicode-range:U+0000-00FF,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:Lora;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/lora-cyrillic-ext-600-normal-CYLe3Bq4.woff2) format("woff2"),url(/assets/lora-cyrillic-ext-600-normal-BobJ8QCm.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Lora;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/lora-cyrillic-600-normal-DuzuWObJ.woff2) format("woff2"),url(/assets/lora-cyrillic-600-normal-j6UMqgXb.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Lora;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/lora-math-600-normal-B9Wi-uy2.woff2) format("woff2"),url(/assets/lora-math-600-normal-soY6uGQW.woff) format("woff");unicode-range:U+0302-0303,U+0305,U+0307-0308,U+0310,U+0312,U+0315,U+031A,U+0326-0327,U+032C,U+032F-0330,U+0332-0333,U+0338,U+033A,U+0346,U+034D,U+0391-03A1,U+03A3-03A9,U+03B1-03C9,U+03D1,U+03D5-03D6,U+03F0-03F1,U+03F4-03F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE00-1EEFF}@font-face{font-family:Lora;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/lora-symbols-600-normal-DaMEG5Dn.woff2) format("woff2"),url(/assets/lora-symbols-600-normal-CURAubwP.woff) format("woff");unicode-range:U+0001-000C,U+000E-001F,U+007F-009F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+2800-28FF,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B00-2BFF,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F000-1F0FF,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F700-1F7FF,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB00-1FBFF}@font-face{font-family:Lora;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/lora-vietnamese-600-normal-B_IFhWKN.woff2) format("woff2"),url(/assets/lora-vietnamese-600-normal-BnEhOXH8.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Lora;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/lora-latin-ext-600-normal-CURVZmIT.woff2) format("woff2"),url(/assets/lora-latin-ext-600-normal-BX8pxmH4.woff) format("woff");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:Lora;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/lora-latin-600-normal-B-3RcLOQ.woff2) format("woff2"),url(/assets/lora-latin-600-normal-Dc3EneHn.woff) format("woff");unicode-range:U+0000-00FF,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:Material Symbols Rounded;font-style:normal;font-weight:100 700;font-display:block;src:url(/assets/material-symbols-rounded-subset-DAOWbFUx.woff2) format("woff2")}:root{--olive: #38442e;--olive-dark: #1e2019;--popover-bg: #2e332a;--popover-muted: #9a9784;--cream: #faf4ec;--card: #fffdf9;--tile-bg: #f4ece2;--surface-field: #f6eee4;--sand: #eee6da;--placeholder-a: #f4e6d9;--placeholder-b: #efdccb;--edge: rgba(60, 46, 38, .08);--edge-strong: rgba(60, 46, 38, .14);--divider: #eadccb;--line-field: #d6c4b1;--control-ring: #a08d7c;--border-dashed: #d9c8b8;--header-text: #eff0e4;--text-on-canvas-2: rgba(239, 240, 228, .72);--fill-on-canvas: rgba(239, 240, 228, .12);--fill-on-canvas-strong: rgba(239, 240, 228, .2);--line-on-canvas: rgba(239, 240, 228, .35);--on-header-positive: #d3e0a8;--on-header-negative: #e8a087;--ink: #3c2e26;--text-2: #7d6b5c;--text-3: #9a8878;--muted: var(--text-2);--muted-light: var(--text-3);--ghost: var(--text-2);--ochre: #c98f2d;--domain-budget: var(--ochre-text);--domain-shopping: #6f8f6a;--domain-food: #b5793a;--domain-diary: #8a5a78;--domain-lists: #5f7a94;--domain-more: #857c70;--domain-budget-on-canvas: var(--ochre);--domain-shopping-on-canvas: #8fae89;--domain-food-on-canvas: #d1954f;--domain-diary-on-canvas: #b07fa0;--domain-lists-on-canvas: #87a3bd;--domain-more-on-canvas: #a49a8c;--ochre-text: #8a6420;--select-soft: #f3e3c4;--progress-fill: #dfa477;--action: #b3552f;--on-action: #fff8f2;--action-text: #a34d2c;--terracotta: var(--action);--on-terracotta: var(--on-action);--terracotta-light: #f3d9cc;--terracotta-light-text: #8a4527;--support-green: #6b7f5a;--green-dark: #5f7350;--on-green: #f6f8f1;--green-deep: #48573b;--success-on-soft: #48573b;--over-red: #b34a2b;--over-red-bg: #f9ddd0;--over-red-text: #8a3222;--over-soft: #e8a087;--track-bg: #f4e6d9;--track-muted: #e7d8c8;--scrim: rgba(20, 22, 12, .45);--scrim-card: rgba(255, 253, 249, .85);--brand-migros: #e2600f;--brand-coop: #b01722;--brand-aldi: #1c62c5;--hover-tint: rgba(60, 46, 38, .05);--hover-tint-strong: rgba(60, 46, 38, .08);--avatar-d-bg: #f3d9cc;--avatar-d-text: #8a4527;--avatar-c-bg: #e8ead9;--avatar-c-text: #5f7350;--r-1: 10px;--r-2: 14px;--r-3: 18px;--r-4: 22px;--r-pill: 99px;--r-sheet: 26px;--r-card: var(--r-4);--r-list: var(--r-3);--fs-caps: .71875rem;--fs-micro: .75rem;--fs-meta: .8125rem;--fs-body: .875rem;--fs-title-s: .9375rem;--fs-section: 1rem;--fs-title-m: 1.125rem;--fs-title-l: 1.375rem;--fs-glance-m: 1.875rem;--fs-glance-l: 2.5rem;--z-header: 10;--z-nav: 12;--z-overlay: 20;--z-toast: 30;--z-dialog: 40;--elev-0: inset 0 0 0 1px var(--edge);--elev-1: inset 0 0 0 1px var(--edge), 0 1px 2px rgba(60, 46, 38, .05), 0 4px 12px rgba(120, 80, 50, .07);--elev-2: 0 6px 18px rgba(120, 80, 50, .12);--elev-3: 0 14px 34px rgba(20, 22, 12, .28);--elev-action: 0 6px 14px rgba(179, 85, 47, .3);--shadow-card: var(--elev-1);--shadow-card-sm: var(--elev-1);--shadow-primary: var(--elev-action);--shadow-nav: 0 -4px 16px rgba(120, 80, 50, .08);--font-heading: "Sora", system-ui, sans-serif;--font-body: "Nunito Sans", system-ui, sans-serif;--font-serif: "Lora", Georgia, serif;--nav-clearance: 180px;--dur-fast: .14s;--dur-base: .2s;--dur-quick: var(--dur-base);--ease-out: cubic-bezier(.2, .7, .3, 1);--ease-emph: cubic-bezier(.2, .9, .3, 1);--select-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%237d6b5c' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");--select-chevron-light: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23eff0e4' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");font-family:var(--font-body);color:var(--ink);background:var(--olive);color-scheme:light;-webkit-font-smoothing:antialiased}:root[data-theme=dark]{color-scheme:dark;--olive: #323d29;--olive-dark: #14160f;--popover-bg: #2c3226;--popover-muted: #9a9784;--cream: #15180f;--card: #242820;--tile-bg: #363b2e;--surface-field: #1c2017;--sand: #333829;--placeholder-a: #2c3126;--placeholder-b: #333829;--edge: rgba(239, 240, 228, .08);--edge-strong: rgba(239, 240, 228, .14);--divider: #3a3f31;--line-field: #3d4233;--control-ring: #948775;--border-dashed: #4a4638;--header-text: #eff0e4;--ink: #ece4d6;--text-2: #ab9d8b;--text-3: #9a8a76;--ochre: #d29a37;--domain-shopping: #8fae89;--domain-food: #d1954f;--domain-diary: #b07fa0;--domain-lists: #87a3bd;--domain-more: #a49a8c;--ochre-text: #d29a37;--select-soft: #3d321a;--progress-fill: color-mix(in srgb, var(--ochre) 70%, transparent);--action: #b0552f;--on-action: #fff8f2;--action-text: #e0896a;--terracotta-light: #4a2c22;--terracotta-light-text: #f0c9b8;--support-green: #6b7f5a;--green-dark: #9bb07c;--on-green: #f6f8f1;--green-deep: #b8c79a;--over-red: #e0714f;--over-red-bg: #3d241c;--over-red-text: #f0b3a0;--over-soft: #e8a087;--avatar-d-bg: #4a2c22;--avatar-d-text: #f0c9b8;--avatar-c-bg: #2f3a28;--avatar-c-text: #a7bd86;--track-bg: #4a4f40;--track-muted: #3a3f30;--scrim: rgba(0, 0, 0, .55);--scrim-card: rgba(36, 40, 32, .88);--brand-migros: color-mix(in srgb, #e2600f 85%, var(--card));--brand-coop: color-mix(in srgb, #b01722 85%, var(--card));--brand-aldi: color-mix(in srgb, #1c62c5 85%, var(--card));--hover-tint: rgba(239, 240, 228, .06);--hover-tint-strong: rgba(239, 240, 228, .1);--elev-0: inset 0 0 0 1px var(--edge);--elev-1: inset 0 0 0 1px var(--edge);--elev-2: inset 0 0 0 1px var(--edge), 0 6px 18px rgba(0, 0, 0, .35);--elev-3: inset 0 0 0 1px var(--edge-strong), 0 14px 34px rgba(0, 0, 0, .55);--elev-action: none;--shadow-nav: 0 -4px 16px rgba(0, 0, 0, .45);--select-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23ab9d8b' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E")}*{box-sizing:border-box}body{margin:0;background:var(--olive)}.icon{font-family:Material Symbols Rounded;font-weight:400;font-style:normal;line-height:1;display:inline-block;vertical-align:middle;white-space:nowrap;font-variation-settings:"FILL" 0,"wght" 500,"opsz" 24;-webkit-font-smoothing:antialiased}.icon--filled{font-variation-settings:"FILL" 1,"wght" 500,"opsz" 24}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:2px solid var(--ochre);outline-offset:2px}.screen-header :focus-visible{outline-color:var(--text-on-canvas-2)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}button,input,select,textarea{font:inherit;color:inherit;letter-spacing:inherit}a,button,input,select,textarea,label,[role=button]{-webkit-tap-highlight-color:transparent}select{-moz-appearance:none;appearance:none;-webkit-appearance:none}html,body{background:var(--olive);overscroll-behavior:none}.app-shell{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:var(--olive)}.app-content{flex:1;display:flex;flex-direction:column}.app-content>*,.route-sheet-motion>*{flex:1;display:flex;flex-direction:column}.route-sheet-motion:not(.route-sheet-motion--pop) .sheet{animation:sheet-rise var(--dur-fast) var(--ease-out) both}@keyframes sheet-rise{0%{opacity:.6;transform:translateY(6px)}to{opacity:1;transform:none}}.button:not(:disabled):active,.icon-button:not(:disabled):active,.chip:active,.segment-control__segment:active,.bottom-nav__item:active,.budget-health__scan:active,.expense-entry__key:active{transform:scale(.98)}.list-row,.todos-row,.fairplay-row,.shopping-suggest__row,.packing-template__head{transition:background-color var(--dur-fast) var(--ease-out)}a.list-row:active,button.list-row:active,.todos-row:active,.fairplay-row:active,.shopping-suggest__row:active,.packing-template__head:active{transition:none;background-color:var(--hover-tint-strong)}.row-leave{overflow:hidden;pointer-events:none;animation:row-leave var(--dur-base) var(--ease-out) forwards}@keyframes row-leave{0%{opacity:1;transform:none;max-height:var(--row-leave-height, 96px)}35%{opacity:.9;transform:none;max-height:var(--row-leave-height, 96px)}to{opacity:0;transform:translate(14px);max-height:0;padding-top:0;padding-bottom:0;border-top-width:0}}.button:not(:disabled):active{box-shadow:var(--shadow-card-sm)}.bottom-nav{position:fixed;inset-inline:0;bottom:0;display:grid;grid-template-columns:repeat(6,1fr);padding:9px 6px calc(5px + env(safe-area-inset-bottom));background:var(--card);border-radius:var(--r-card) var(--r-card) 0 0;box-shadow:var(--shadow-nav)}.bottom-nav__item{display:flex;flex-direction:column;align-items:center;gap:2px;text-decoration:none;color:var(--muted-light)}.bottom-nav__label{font-size:var(--fs-caps);font-weight:700}.bottom-nav__item--today{display:none}.bottom-nav__item.is-active{color:var(--terracotta)}.bottom-nav__item.is-active .bottom-nav__label{font-weight:800}.screen-header{background:var(--olive);color:var(--header-text);font-family:var(--font-heading);padding:10px 22px 18px;padding-top:calc(10px + env(safe-area-inset-top));flex:none;position:sticky;top:0;z-index:var(--z-header)}.screen-header__title{margin:0;font-size:var(--fs-title-l);font-weight:700;letter-spacing:-.5px}.screen-header__row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px}.screen-header__row--back{grid-template-columns:auto 1fr auto}.screen-header__back{margin-left:-6px}.screen-header__lead{min-width:0}.screen-header__trailing{display:flex;align-items:center;justify-content:flex-end;gap:8px}.domain-budget{--domain-accent: var(--domain-budget);--domain-accent-canvas: var(--domain-budget-on-canvas)}.domain-shopping{--domain-accent: var(--domain-shopping);--domain-accent-canvas: var(--domain-shopping-on-canvas)}.domain-food{--domain-accent: var(--domain-food);--domain-accent-canvas: var(--domain-food-on-canvas)}.domain-diary{--domain-accent: var(--domain-diary);--domain-accent-canvas: var(--domain-diary-on-canvas)}.domain-lists{--domain-accent: var(--domain-lists);--domain-accent-canvas: var(--domain-lists-on-canvas)}.domain-more{--domain-accent: var(--domain-more);--domain-accent-canvas: var(--domain-more-on-canvas)}.screen-header{box-shadow:inset 0 -3px 0 var(--domain-accent-canvas, transparent)}.sheet{flex:1;background:var(--cream);border-radius:var(--r-sheet) var(--r-sheet) 0 0;padding:16px 22px calc(var(--nav-clearance) + env(safe-area-inset-bottom));display:flex;flex-direction:column}.card{background:var(--card);border-radius:var(--r-card);box-shadow:var(--shadow-card)}.list-card{background:var(--card);border-radius:var(--r-list);box-shadow:var(--shadow-card-sm)}.section-heading{margin:0;font-family:var(--font-serif);font-size:var(--fs-title-s);font-weight:600;color:var(--muted)}.emoji-tile{flex:none;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--r-2);background:var(--tile-bg);font-size:17px}.emoji-tile--lg{width:38px;height:38px;font-size:18px}.chip{display:inline-flex;align-items:center;gap:4px;padding:7px 14px;border:none;border-radius:var(--r-pill);background:var(--card);box-shadow:var(--elev-0);color:var(--muted);font-family:var(--font-body);font-size:var(--fs-meta);font-weight:700;cursor:pointer}.chip.is-active{background:var(--ochre);color:var(--olive-dark);font-weight:800;box-shadow:var(--elev-2)}.header-chip{border:none;border-radius:var(--r-1);padding:5px 12px;font-family:var(--font-body);font-size:var(--fs-caps);font-weight:600;cursor:pointer;background:var(--fill-on-canvas);color:var(--header-text);opacity:.8}.header-chip.is-active{background:var(--ochre);color:var(--olive-dark);font-weight:700;opacity:1}.scroll-tabs{display:flex;gap:8px;margin-top:12px;padding:2px 0;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.scroll-tabs::-webkit-scrollbar{display:none}.scroll-tabs>*{flex:0 0 auto;scroll-snap-align:start}.scroll-tabs .header-chip{max-width:180px;padding:9px 15px;border-radius:var(--r-2);font-size:var(--fs-title-s);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scroll-tabs--lg .header-chip{padding:11px 18px;font-size:var(--fs-section)}.header-chip:not(.is-active){transition:background var(--dur-quick) var(--ease-out),border-color var(--dur-quick) var(--ease-out),transform var(--dur-quick) var(--ease-out)}@media(hover:hover)and (min-width:900px){.header-chip:not(.is-active):hover{background:var(--hover-tint-strong);cursor:pointer}}.field{box-sizing:border-box;min-height:44px;padding:10px 13px;border:1px solid var(--line-field);border-radius:var(--r-2);background-color:var(--surface-field);color:var(--ink);font-family:var(--font-body);font-size:var(--fs-body);font-weight:600;line-height:1.35}.field--sm{min-height:36px;padding:7px 11px;border-radius:var(--r-1);font-size:var(--fs-body)}.field::placeholder,.field__input::placeholder{color:var(--text-3);font-weight:600;opacity:1}select.field{padding-right:32px;background-image:var(--select-chevron);background-repeat:no-repeat;background-position:right 10px center;cursor:pointer}textarea.field{resize:vertical}.field--wrap{display:flex;align-items:center;gap:8px;padding-top:0;padding-bottom:0}.field__input{flex:1 1 auto;min-width:0;padding:0;border:none;background:transparent;color:inherit;font:inherit}.field__input:focus-visible{outline:none}.field:focus-within{outline:2px solid var(--ochre);outline-offset:2px}.field[aria-invalid=true]{border-color:var(--over-red)}.field:disabled,.field:has(>.field__input:disabled){opacity:.55}.field--header{border-color:transparent;background-color:var(--fill-on-canvas-strong);color:var(--header-text)}.field--header::placeholder,.field--header .field__input::placeholder{color:var(--text-on-canvas-2)}.field--header:focus-within{outline-color:var(--text-on-canvas-2)}select.field--header{background-image:var(--select-chevron-light)}.field-error{margin:6px 0 0;font-size:var(--fs-meta);font-weight:700;color:var(--over-red-text)}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:48px 24px;color:var(--muted)}.empty-state__emoji{font-size:40px;line-height:1}.empty-state__message{margin:0;max-width:30ch;font-size:var(--fs-body);font-weight:600;line-height:1.5}.empty-state__action{margin-top:6px}.empty-state--inline{gap:6px;padding:14px 16px}.empty-state--inline .empty-state__emoji{font-size:22px}.empty-state--inline .empty-state__message{font-size:var(--fs-meta)}.empty-state--inline .empty-state__action{margin-top:2px}.button{display:inline-flex;align-items:center;justify-content:center;gap:6px;box-sizing:border-box;height:48px;padding:0 18px;border:1.5px solid transparent;border-radius:var(--r-list);font-family:var(--font-body);font-size:var(--fs-body);font-weight:800;text-decoration:none;cursor:pointer}.button--md{height:40px;padding:0 14px;border-radius:var(--r-2);font-size:var(--fs-meta)}.button--sm{height:32px;padding:0 12px;border-radius:var(--r-pill);font-size:var(--fs-meta)}.button--primary{background:var(--action);color:var(--on-action);box-shadow:var(--elev-action)}.button--secondary{background:var(--terracotta-light);color:var(--terracotta-light-text)}.button--outline{background:transparent;border-color:var(--action-text);color:var(--action-text)}.button--ghost{background:transparent;color:var(--action-text)}.button--danger{background:var(--over-red-bg);color:var(--over-red-text)}.button:disabled{opacity:.5;cursor:default;box-shadow:none}.icon-button{display:inline-grid;place-items:center;flex-shrink:0;box-sizing:border-box;width:40px;height:40px;padding:0;border:1.5px solid transparent;border-radius:var(--r-2);text-decoration:none;cursor:pointer}.icon-button--sm{width:32px;height:32px;border-radius:var(--r-1)}.icon-button--lg{width:48px;height:48px;border-radius:var(--r-list)}.icon-button--round{border-radius:50%}.icon-button--primary{background:var(--action);color:var(--on-action)}.icon-button--secondary{background:var(--terracotta-light);color:var(--terracotta-light-text)}.icon-button--outline{background:transparent;border-color:var(--action-text);color:var(--action-text)}.icon-button--header{background:var(--fill-on-canvas);color:var(--header-text)}.icon-button:disabled{opacity:.5;cursor:default}.list-row{display:flex;align-items:center;gap:12px;width:100%;min-height:52px;padding:10px 16px;box-sizing:border-box;border:none;border-radius:0;background:none;color:var(--ink);font:inherit;text-align:left;text-decoration:none}.list-row+.list-row{border-top:1px solid var(--divider)}.list-card>.list-row:first-child{border-radius:var(--r-list) var(--r-list) 0 0}.list-card>.list-row:last-child{border-radius:0 0 var(--r-list) var(--r-list)}.list-row__leading{flex:none;display:flex;align-items:center;gap:8px}.list-row__text{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.list-row__title{display:flex;align-items:center;gap:6px;font-size:var(--fs-body);font-weight:700}.list-row__meta{display:flex;align-items:center;gap:5px;font-size:var(--fs-caps);font-weight:600;color:var(--text-2)}.list-row__trailing{flex:none;display:flex;align-items:center;gap:8px;margin-left:auto}.list-row__chevron{flex:none;color:var(--text-3)}a.list-row,button.list-row{cursor:pointer}.list-row--sm{gap:10px;min-height:40px;padding:7px 14px}.list-row--sm .list-row__title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-body)}.list-row__date{font-size:var(--fs-micro);font-weight:600;color:var(--text-2);font-variant-numeric:tabular-nums;white-space:nowrap}.setting-row{container-type:inline-size;display:flex;flex-wrap:wrap;align-items:center;gap:12px}.setting-row+.setting-row,.setting-row--divided{margin-top:12px;padding-top:12px;border-top:1px solid var(--divider)}.setting-row__text{flex:1 1 0;min-width:0}.setting-row__label{font-size:var(--fs-body);font-weight:800}.setting-row__sub{margin-top:2px;font-size:var(--fs-caps);font-weight:600;color:var(--text-2)}.setting-row__control{display:flex;flex:0 0 auto;align-items:center;gap:8px;margin-left:auto}.setting-row__value{font-size:var(--fs-body);font-weight:700;color:var(--text-2)}@container (max-width: 419px){.setting-row--stack>.setting-row__text{flex-basis:100%}}.amount{font-variant-numeric:tabular-nums;white-space:nowrap}.amount--positive{color:var(--green-dark)}.amount--negative{color:var(--over-red-text)}.badge{display:inline-flex;align-items:center;justify-content:center;gap:3px;flex-shrink:0;padding:1px 7px;border:none;border-radius:var(--r-pill);font-family:var(--font-body);font-size:var(--fs-caps);font-weight:800;line-height:1.5;white-space:nowrap}.badge--md{padding:3px 9px;font-size:var(--fs-micro);font-weight:700}.badge--count{background:var(--ochre);color:var(--olive-dark)}.badge--warn{background:var(--select-soft);color:var(--ochre-text)}.badge--danger{background:var(--over-red-bg);color:var(--over-red-text)}.badge--neutral{background:var(--sand);color:var(--text-2)}.badge--success{background:var(--support-green);color:var(--on-green)}button.badge{min-height:24px;cursor:pointer}.avatar{display:inline-flex;align-items:center;justify-content:center;width:23px;height:23px;border-radius:50%;font-size:10.5px;font-weight:800}.avatar--d{background:var(--avatar-d-bg);color:var(--avatar-d-text)}.avatar--emoji{font-size:13px}.avatar--md{width:34px;height:34px;font-size:14px}.avatar--md.avatar--emoji{font-size:18px}.avatar--lg{width:44px;height:44px;font-size:17px}.avatar--lg.avatar--emoji{font-size:22px}.avatar--c{background:var(--avatar-c-bg);color:var(--avatar-c-text)}.segment-control{display:flex;gap:3px;padding:3px;border-radius:var(--r-2);background:var(--fill-on-canvas)}.header-cta{display:inline-flex;align-items:center;gap:4px;min-height:36px;padding:0 12px;font-size:var(--fs-meta);text-decoration:none}.segment-control__segment{flex:1;padding:7px 6px;border:none;border-radius:var(--r-1);background:transparent;color:var(--text-on-canvas-2);font-family:var(--font-heading);font-size:var(--fs-meta);font-weight:600;white-space:nowrap;cursor:pointer}.segment-control__segment.is-active{background:var(--ochre);color:var(--olive-dark);font-weight:700}.segment-control--sheet{background:var(--sand)}.segment-control--sheet .segment-control__segment{color:var(--text-2)}.segment-control--sheet .segment-control__segment.is-active{color:var(--olive-dark)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-overlay);display:flex;justify-content:center;padding:22px;background:var(--scrim);overscroll-behavior:contain;animation:overlay-scrim-in var(--dur-base) var(--ease-out)}.overlay--dialog{z-index:var(--z-dialog);align-items:center}.overlay--sheet,.overlay--popover{align-items:flex-end}.overlay--sheet{padding:0}.overlay__panel{width:100%;box-sizing:border-box;box-shadow:var(--elev-3)}.overlay--dialog .overlay__panel{max-width:340px;padding:18px;border-radius:var(--r-3);background:var(--card);color:var(--ink);animation:overlay-dialog-in var(--dur-base) var(--ease-out)}.overlay--sheet .overlay__panel{max-width:560px;max-height:calc(100dvh - 48px);overflow-y:auto;padding:18px 18px calc(18px + env(safe-area-inset-bottom));border-radius:var(--r-sheet) var(--r-sheet) 0 0;background:var(--card);color:var(--ink);animation:overlay-sheet-in var(--dur-base) var(--ease-out)}.overlay--popover .overlay__panel{max-width:360px;padding:16px 18px;border-radius:var(--r-3);background:var(--olive-dark);color:var(--header-text);animation:overlay-popover-in var(--dur-fast) var(--ease-out)}.overlay.is-closing{pointer-events:none;animation:overlay-scrim-out var(--dur-fast) var(--ease-out) forwards}.overlay--dialog.is-closing .overlay__panel{animation:overlay-dialog-out var(--dur-fast) var(--ease-out) forwards}.overlay--sheet.is-closing .overlay__panel{animation:overlay-sheet-out var(--dur-fast) var(--ease-out) forwards}.overlay--popover.is-closing .overlay__panel{animation:overlay-popover-out var(--dur-fast) var(--ease-out) forwards}@keyframes overlay-scrim-in{0%{opacity:0}}@keyframes overlay-scrim-out{to{opacity:0}}@keyframes overlay-dialog-in{0%{opacity:0;transform:scale(.96)}}@keyframes overlay-dialog-out{to{opacity:0;transform:scale(.96)}}@keyframes overlay-sheet-in{0%{transform:translateY(100%)}}@keyframes overlay-sheet-out{to{transform:translateY(100%)}}@keyframes overlay-popover-in{0%{opacity:0;transform:translateY(12px)}}@keyframes overlay-popover-out{to{opacity:0;transform:translateY(12px)}}.dialog__message{margin:0 0 16px;font-family:var(--font-body);font-size:var(--fs-title-s);font-weight:600;line-height:1.45}.dialog__actions{display:flex;justify-content:flex-end;gap:8px}.dialog__actions.is-stacked{flex-direction:column;align-items:stretch}.dialog__actions.is-stacked .dialog__dismiss{order:1}.dialog__actions button{border:none;border-radius:var(--r-1);padding:9px 18px;font-family:var(--font-body);font-size:var(--fs-body);font-weight:800;cursor:pointer}.dialog__cancel{background:transparent;color:var(--muted)}.dialog__ok{background:var(--terracotta);color:var(--on-terracotta)}.dialog__danger{background:var(--over-red);color:var(--on-terracotta)}.toast-host{position:fixed;left:0;right:0;bottom:calc(var(--nav-clearance) + env(safe-area-inset-bottom));z-index:var(--z-toast);display:flex;justify-content:center;padding:0 16px;pointer-events:none}.toast{display:flex;align-items:center;gap:12px;max-width:420px;min-height:44px;padding:10px 14px 10px 16px;border-radius:var(--r-pill);background:var(--popover-bg);color:var(--header-text);font-size:var(--fs-body);font-weight:700;line-height:1.3;box-shadow:var(--elev-3);pointer-events:auto;animation:toast-in var(--dur-fast) var(--ease-out) both}.toast__text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toast__action{flex-shrink:0;margin:-6px -8px -6px 0;padding:6px 10px;border:none;border-radius:var(--r-pill);background:transparent;color:var(--ochre);font-size:var(--fs-meta);font-weight:800;text-transform:uppercase;letter-spacing:.04em;cursor:pointer}.toast__action:active{background:var(--fill-on-canvas-strong)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(min-width:900px){.toast-host{bottom:24px}}@media(min-width:900px){.button{max-width:360px}.overlay--dialog .overlay__panel{max-width:480px}.overlay--sheet{padding:22px}.overlay--sheet .overlay__panel{padding-bottom:18px;border-radius:var(--r-4)}}@media(hover:hover)and (min-width:900px){.button{transition:filter var(--dur-quick) var(--ease-out),transform var(--dur-quick) var(--ease-out),box-shadow var(--dur-quick) var(--ease-out),background var(--dur-quick) var(--ease-out)}.button--primary:not(:disabled):hover{filter:brightness(.94);transform:translateY(-1px);box-shadow:var(--elev-action)}.button--secondary:not(:disabled):hover,.button--outline:not(:disabled):hover,.button--ghost:not(:disabled):hover{background:var(--terracotta-light);filter:brightness(.96)}.button--danger:not(:disabled):hover{filter:brightness(.96)}.icon-button{transition:filter var(--dur-quick) var(--ease-out),background var(--dur-quick) var(--ease-out)}.icon-button--primary:not(:disabled):hover{filter:brightness(.94)}.icon-button--secondary:not(:disabled):hover,.icon-button--outline:not(:disabled):hover{background:var(--terracotta-light);filter:brightness(.96)}.icon-button--header:hover{background:var(--fill-on-canvas-strong)}a.list-row,button.list-row{transition:background-color var(--dur-quick) var(--ease-out)}a.list-row:hover,button.list-row:hover{background-color:var(--hover-tint)}.list-row:hover .list-row__chevron{color:var(--text-2)}.segment-control__segment:not(.is-active):hover{color:var(--header-text)}.segment-control--sheet .segment-control__segment:not(.is-active):hover{color:var(--ink)}.chip:not(.is-active){transition:background var(--dur-quick) var(--ease-out)}.chip:not(.is-active):hover{background:var(--divider)}.dialog__actions button{transition:filter var(--dur-quick) var(--ease-out)}.dialog__ok:hover{filter:brightness(.94)}.dialog__cancel:hover{color:var(--ink)}}.scan-progress{position:absolute;inset:auto 0 0 0;height:3px;background:color-mix(in srgb,currentColor 15%,transparent)}.scan-progress__fill{display:block;height:100%;width:0;background:var(--terracotta);transition-property:width;transition-timing-function:var(--ease-out)}.budget-quick-actions{display:flex;gap:9px}.budget-quick-actions .button{flex:1 1 auto;white-space:nowrap}.budget-onboard{margin-top:2px;display:flex;flex-direction:column;align-items:center;gap:8px;padding:22px 20px 24px;text-align:center}.budget-onboard__emoji{font-size:40px;line-height:1}.budget-onboard__title{margin:0;font-family:var(--font-heading);font-size:var(--fs-title-m);font-weight:800;color:var(--ink)}.budget-onboard__copy{margin:0;max-width:34ch;font-size:var(--fs-meta);font-weight:600;line-height:1.5;color:var(--muted)}.budget-onboard__actions{margin-top:8px;display:flex;flex-direction:column;gap:9px;width:100%}.budget-onboard__actions .button{width:100%}.budget-header__actions{display:flex;align-items:center;gap:10px}.budget-header__sync{font-size:var(--fs-title-m);opacity:.55}.budget-header__label{margin-top:12px;font-size:var(--fs-caps);font-weight:600;letter-spacing:1.5px;opacity:.55}.budget-header__split{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:14px;align-items:start}.budget-header__split.is-single{grid-template-columns:minmax(0,1fr)}.budget-header__block--fixed{padding:8px 12px 10px;border-radius:var(--r-2);background:var(--fill-on-canvas)}.budget-header__block-label{font-size:var(--fs-caps);font-weight:700;letter-spacing:1.4px;opacity:.55}.budget-header__block-sum{margin-top:2px;font-size:var(--fs-title-l);font-weight:800;letter-spacing:-.6px;font-variant-numeric:tabular-nums}.budget-header__block-sub{margin-top:2px;font-size:var(--fs-caps);font-weight:600;line-height:1.35;opacity:.6}.budget-header__split:not(.is-single) .budget-header__spent{font-size:var(--fs-glance-m);letter-spacing:-1px}.budget-header__sum{margin-top:2px;display:flex;align-items:baseline;gap:8px}.budget-header__spent{font-size:var(--fs-glance-l);font-weight:800;letter-spacing:-1.5px;font-variant-numeric:tabular-nums}.budget-header__total{font-size:var(--fs-body);font-weight:600;opacity:.6;font-variant-numeric:tabular-nums;white-space:nowrap}.budget-header__block-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.budget-header__bar{position:relative;margin-top:10px;display:flex;gap:3px;height:6px}.budget-header__bar-tick{position:absolute;top:-3px;bottom:-3px;width:2px;margin-left:-1px;border-radius:1px;background:var(--header-text)}.budget-header__pace{margin-top:6px}.budget-header__bar-fill{background:var(--ochre);border-radius:3px}.budget-header__bar-rest{background:var(--fill-on-canvas-strong);border-radius:3px}.budget-cats{margin-top:12px;display:flex;gap:12px;align-items:center;font-size:var(--fs-caps);font-weight:600}.budget-cats__chip{opacity:.75}.budget-cats__name{display:none}.budget-cats__chip.is-over{color:var(--over-soft);opacity:1}.budget-header__welcome{margin:14px 0 2px;max-width:26ch;font-size:var(--fs-section);font-weight:700;line-height:1.4}.budget-health{margin-top:12px;display:flex;align-items:center;gap:6px;height:48px;background:var(--support-green);border-radius:var(--r-list);box-shadow:var(--elev-2);padding:0 6px 0 0;color:var(--on-green)}.budget-health__main{flex:1;align-self:stretch;display:flex;align-items:center;gap:10px;min-width:0;padding-left:12px;border-radius:var(--r-list) 0 0 var(--r-list);color:inherit;text-decoration:none}.budget-health__icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--r-1);background:var(--fill-on-canvas-strong);flex:none}.budget-health__text{flex:1;font-size:var(--fs-body);font-weight:800}.budget-health__main{transition:background-color var(--dur-fast) var(--ease-out)}.budget-health__main:active{transition:none;background-color:var(--fill-on-canvas)}.budget-health__scan{display:flex;align-items:center;justify-content:center;gap:5px;min-width:44px;min-height:36px;padding:0 12px;border:none;border-radius:var(--r-pill);background:var(--on-green);color:var(--success-on-soft);font-family:var(--font-body);font-size:var(--fs-micro);font-weight:800;white-space:nowrap;cursor:pointer;text-decoration:none}.budget-health__scan:disabled{opacity:.6;cursor:default}.budget-recent{margin-top:14px;display:flex;flex-direction:column}.budget-recent__amount{font-size:var(--fs-body);font-weight:800}.budget-menu__heading{margin-top:11px}.budget-menu{margin-top:8px;padding:3px 0}.budget-col{display:contents}@media(min-width:900px){.sheet:has(.budget-col){flex-direction:row;align-items:flex-start;gap:20px}.budget-col{display:flex;flex-direction:column;min-width:0}.budget-col--left{flex:1 1 0}.budget-col--right{flex:1.15 1 0}.budget-col>:first-child{margin-top:0}}.placeholder__body{padding-top:8px;color:var(--muted);font-size:var(--fs-body);font-weight:600}.auth-page{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:var(--olive)}.auth-splash{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;color:var(--header-text);background:var(--olive)}.auth-form{display:flex;flex-direction:column;gap:1rem;width:100%;max-width:22rem;margin:24px auto 0}.auth-field{display:flex;flex-direction:column;gap:.375rem;font-size:var(--fs-meta);font-weight:700;color:var(--muted)}.auth-field input{padding:.75rem .875rem;font-size:var(--fs-section);font-family:var(--font-body);color:var(--ink);background:var(--card);border:1px solid var(--divider);border-radius:var(--r-list)}.auth-error{margin:0;color:var(--over-red-text);font-size:var(--fs-body);font-weight:700}.expense-entry{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;background:var(--olive)}.expense-entry .sheet{padding-bottom:0}.expense-entry__header-inner{color:var(--header-text)}.expense-entry__amount-row{display:flex;align-items:center;justify-content:center;gap:16px}.expense-entry__amount-row .expense-entry__save{flex:0 0 auto}.expense-entry__amount-input{width:220px;border:none;border-bottom:2px solid var(--line-on-canvas);background:transparent;color:var(--header-text);font-family:var(--font-display, "Sora");font-size:var(--fs-glance-l);font-weight:800;text-align:center;outline:none}.expense-entry__amount-input:focus{border-bottom-color:var(--ochre)}.expense-entry__title{width:100%;margin-bottom:10px}.expense-entry__category-emoji{font-size:22px;line-height:1;margin:0 0 2px}.expense-entry__date-chip{flex:0 0 auto;display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border:1px solid var(--divider);border-radius:var(--r-pill);background:transparent;color:var(--muted);font:inherit;font-size:var(--fs-meta);font-weight:700}.expense-entry__date-chip.is-active{background:var(--ochre);border-color:var(--ochre);color:var(--olive-dark)}.expense-entry__date-other{position:relative;display:inline-flex}.expense-entry__date-input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;padding:0;border:0;opacity:0;pointer-events:none}.expense-entry__amount{margin-top:16px;text-align:center}.expense-entry__amount-label{font-size:var(--fs-caps);font-weight:600;letter-spacing:1.5px;opacity:.55}.expense-entry__amount-value{font-family:var(--font-heading);font-size:var(--fs-glance-l);font-weight:800;letter-spacing:-1.5px;font-variant-numeric:tabular-nums}.expense-entry__kind{margin-top:14px}.expense-entry__categories{margin-top:8px;display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:1fr;gap:7px}.expense-entry__categories--collapsed{grid-template-columns:repeat(4,1fr) 44px}.expense-entry__category{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:64px;padding:8px 2px;border:none;border-radius:var(--r-list);background:var(--card);box-shadow:var(--shadow-card-sm);color:var(--muted);font-family:var(--font-body);font-size:var(--fs-caps);font-weight:700;line-height:1.2;cursor:pointer}.expense-entry__category-label{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;-webkit-hyphens:auto;hyphens:auto;hyphenate-limit-chars:6 3 4;overflow-wrap:anywhere;text-align:center}.expense-entry__category--more{border:1px dashed var(--border-dashed);background:transparent;box-shadow:none}.expense-entry__category--more .icon{color:var(--muted)}.expense-entry__category-count{font-size:var(--fs-caps);color:var(--muted-light)}.expense-entry__category.is-selected{background:var(--olive);color:var(--header-text)}.expense-entry__category:disabled{opacity:.55;cursor:default}.expense-entry__category{transition:background-color var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out)}.expense-entry__category:not(:disabled):active{transition:none;background:var(--ochre);color:var(--olive-dark);box-shadow:none}.expense-entry__spacer{flex:1}.expense-entry__keypad{position:sticky;bottom:0;display:grid;grid-template-columns:repeat(3,1fr) 1.15fr;grid-auto-rows:48px;gap:5px;margin:0 -22px;padding:6px 22px calc(10px + env(safe-area-inset-bottom));background:var(--cream)}.expense-entry__key{height:48px;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--r-3);background:var(--card);box-shadow:var(--shadow-card-sm);font-family:var(--font-body);font-size:21px;font-weight:800;color:var(--ink);cursor:pointer;touch-action:manipulation;transition:background-color var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out)}.expense-entry__key .icon{font-size:20px;color:var(--muted)}.expense-entry__key:active{transition:none;background:var(--ochre);color:var(--olive-dark);box-shadow:none}.expense-entry__key:active .icon{color:var(--olive-dark)}.expense-entry__key--zero{grid-column:span 2}.expense-entry__key--backspace{grid-column:4;grid-row:1}.expense-entry__key--save{grid-column:4;grid-row:2 / span 3;height:auto;flex-direction:column;gap:6px;background:var(--action);color:var(--on-action);box-shadow:var(--elev-action)}.expense-entry__save-glyph{display:flex;align-items:center;gap:4px;font-size:22px;line-height:1}.expense-entry__key--save .icon{color:inherit}.expense-entry__save-label{font-size:var(--fs-body);font-weight:800}.expense-entry__key--save:disabled{background:var(--sand);color:var(--text-2);box-shadow:none;cursor:default}.expense-entry__key--save:not(:disabled):active{background:var(--action);color:var(--on-action);box-shadow:var(--elev-action)}.expense-entry__key--save:active .icon{color:inherit}.expense-entry__save{flex:1}.expense-entry__receipt-scanning{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:var(--r-2);position:relative;overflow:hidden;background:var(--select-soft);color:var(--ochre-text);font-size:var(--fs-meta);font-weight:800}.expense-entry__receipt-scanning .is-spinning{animation:receipt-scan-spin 1s linear infinite}@keyframes receipt-scan-spin{to{transform:rotate(360deg)}}.expense-entry__receipt{display:flex;align-items:center;gap:10px;margin-top:10px}.expense-entry__receipt-chip{position:relative;display:inline-block;flex-shrink:0}.expense-entry__receipt-thumb{width:48px;height:48px;object-fit:cover;border-radius:var(--r-1);border:1px solid var(--terracotta-light)}.expense-entry__receipt-remove{position:absolute;top:-6px;right:-6px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:50%;background:var(--terracotta);color:var(--on-terracotta);cursor:pointer}.expense-entry__receipt-status{font-size:var(--fs-meta);font-weight:700;color:var(--muted)}.expense-entry__receipt-error{font-size:var(--fs-meta);font-weight:700;color:var(--over-red-text)}.transactions__search{margin-top:12px}.transactions__search-icon{opacity:.6}.transactions__chips{margin-top:10px;display:flex;flex-wrap:wrap;gap:6px}.transactions__category{position:relative}.transactions__category>summary{list-style:none}.transactions__category>summary::-webkit-details-marker{display:none}.transactions__category-popover{position:absolute;z-index:5;top:calc(100% + 6px);left:0;min-width:180px;max-height:260px;overflow-y:auto;display:flex;flex-direction:column;padding:6px;border-radius:var(--r-2);background:var(--olive-dark);box-shadow:var(--elev-3)}.transactions__category-option{border:none;background:transparent;text-align:left;padding:8px 10px;border-radius:var(--r-1);color:var(--header-text);font-family:var(--font-body);font-size:var(--fs-meta);font-weight:600;cursor:pointer}.transactions__category-option:hover,.transactions__category-option[aria-selected=true]{background:var(--fill-on-canvas)}.transactions__list{display:flex;flex-direction:column}.transactions__group{content-visibility:auto;contain-intrinsic-size:auto 120px}.transactions__group+.transactions__group{margin-top:12px}.transactions__day-card{margin-top:6px}.transactions__sync{color:var(--ochre)}.transactions__amount{flex-shrink:0;font-size:var(--fs-title-s);font-weight:800}.transactions__sync-hint{margin:10px 0 0;text-align:center;font-size:var(--fs-caps);font-weight:700;color:var(--muted-light)}.transactions__sync-hint-icon{color:var(--ochre);vertical-align:-2px}.categories__kind{margin-top:14px}.categories__sections{display:flex;flex-direction:column;gap:14px}.categories__section-heading{display:flex;align-items:center;gap:6px;margin:0 4px 6px;font-size:var(--fs-caps);font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--text-2)}.categories__section-label{flex:1}.categories__section-total{font-variant-numeric:tabular-nums;letter-spacing:0}.categories__card--archived{opacity:.7}.categories__budget{font-size:var(--fs-meta);font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}.categories__budget.is-empty{font-weight:600;color:var(--text-3)}.categories__totals{display:flex;align-items:stretch;gap:8px;margin-bottom:10px}.categories__total{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 8px;text-align:center;border-radius:var(--r-2);background:var(--card);box-shadow:var(--shadow-card)}.categories__total-label{font-size:var(--fs-caps);font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--muted)}.categories__total b{font-size:var(--fs-title-s);font-weight:800;font-variant-numeric:tabular-nums}.categories__sortbar{display:flex;gap:8px;margin-bottom:12px}.categories__add{align-self:flex-start;margin:4px 0 10px;padding-left:4px}.categories__editor{display:flex;flex-direction:column;gap:12px;padding:12px 16px 14px;border-top:1px solid var(--divider);border-bottom:1px solid var(--divider);background:var(--hover-tint)}.categories__editor:last-child{border-bottom:none}.categories__field{display:flex;flex-direction:column;gap:5px}.categories__field-label{font-size:var(--fs-caps);font-weight:700;color:var(--muted)}.categories__budget-input{display:flex;align-items:center;gap:8px}.categories__budget-input input{flex:1}.categories__budget-suffix{font-size:var(--fs-meta);font-weight:700;color:var(--muted)}.categories__checkbox{display:flex;align-items:center;gap:8px;font-size:var(--fs-meta);font-weight:700;color:var(--ink);cursor:pointer}.categories__checkbox .icon{color:var(--support-green)}.categories__error{margin:0;font-size:var(--fs-micro);font-weight:700;color:var(--over-red-text)}.categories__editor-actions{display:flex;gap:9px}.categories__editor-actions .button{flex:1}.categories__archived{margin-top:8px}.categories__archived summary{font-family:var(--font-serif);font-size:var(--fs-body);font-weight:600;color:var(--muted);cursor:pointer;padding:8px 0}.expense-entry__section-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.expense-entry__split-link{display:inline-flex;align-items:center;gap:3px;padding:6px 0 6px 8px;border:none;background:transparent;color:var(--terracotta);font-family:var(--font-body);font-size:var(--fs-meta);font-weight:700;cursor:pointer}.expense-entry__split-link:disabled{color:var(--muted-light);cursor:default}.split-panel{margin-top:8px;display:flex;flex-direction:column;gap:12px}.split-panel__kind{margin-bottom:12px}.split-panel__rows{display:flex;flex-direction:column;gap:10px}.split-panel__row{display:flex;flex-direction:column;gap:7px;padding:10px;border-radius:var(--r-list);background:var(--card);box-shadow:var(--shadow-card-sm)}.split-panel__tiles{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.split-panel__tiles::-webkit-scrollbar{display:none}.split-panel__tile{flex:0 0 auto;display:flex;align-items:center;gap:5px;padding:7px 11px;border:none;border-radius:var(--r-pill);background:var(--cream);color:var(--muted);font-family:var(--font-body);font-size:var(--fs-caps);font-weight:700;cursor:pointer}.split-panel__tile.is-selected{background:var(--olive);color:var(--header-text)}.split-panel__tile--toggle{background:transparent;box-shadow:inset 0 0 0 1.5px var(--border-dashed)}.split-panel__tile-emoji{font-size:13px}.split-panel__amount{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:var(--r-list);background:var(--cream)}.split-panel__currency{font-size:var(--fs-caps);font-weight:800;letter-spacing:.5px;color:var(--muted)}.split-panel__amount-input{flex:1;min-width:0;border:none;background:transparent;font-family:var(--font-body);font-size:var(--fs-section);font-weight:800;color:var(--ink);text-align:right;font-variant-numeric:tabular-nums}.split-panel__amount-input:read-only{color:var(--muted)}.split-panel__remove{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:50%;background:transparent;color:var(--muted-light);cursor:pointer}.split-panel__toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px}.split-panel__remainder{font-size:var(--fs-meta);font-weight:800;font-variant-numeric:tabular-nums;color:var(--ochre)}.split-panel__remainder.is-zero{color:var(--support-green)}.split-panel__remainder.is-negative{color:var(--over-red)}.split-panel__actions{display:flex;gap:9px}.split-panel__save{flex:1}.tx-detail{min-height:100vh;min-height:100dvh;background:var(--olive)}.tx-detail__amount{margin-top:16px;text-align:center;color:var(--header-text)}.tx-detail__amount-value{font-family:var(--font-heading);font-size:var(--fs-glance-m);font-weight:800;letter-spacing:-1.2px;font-variant-numeric:tabular-nums}.tx-detail__amount-label{font-size:var(--fs-caps);font-weight:600;letter-spacing:1.5px;text-transform:uppercase;opacity:.55}.tx-detail__meta{padding:4px 16px;margin-bottom:4px}.tx-detail__meta-row{display:flex;align-items:center;gap:12px;padding:12px 0;font-size:var(--fs-body)}.tx-detail__meta-row+.tx-detail__meta-row{border-top:1px solid var(--divider)}.tx-detail__meta-icon{color:var(--muted);flex-shrink:0}.tx-detail__meta-label{color:var(--muted);font-weight:700}.tx-detail__meta-value{margin-left:auto;text-align:right;color:var(--ink);font-weight:800}.tx-detail__splits{padding:0}.tx-detail__split-amount{font-size:var(--fs-title-s);font-weight:800}.tx-detail__actions{margin-top:14px;display:flex;gap:8px;flex-wrap:wrap}.tx-detail__actions .button{flex:1;gap:6px}.tx-detail__edit{display:flex;flex-direction:column;gap:12px;padding:14px 16px}.tx-detail__edit-field{display:flex;align-items:center;gap:10px;font-size:var(--fs-meta);font-weight:700;color:var(--muted)}.tx-detail__edit-field span{flex:0 0 72px}.tx-detail__edit-field input{flex:1;min-width:0}.tx-detail__edit-field input:disabled{opacity:.55}.tx-detail__edit-hint{margin:0;font-size:var(--fs-caps);font-weight:600;color:var(--muted);font-style:italic}.tx-detail__reimburse{padding:12px 16px;display:flex;flex-direction:column;gap:10px}.tx-detail__debtor-row{display:flex;gap:10px;align-items:center}.tx-detail__debt-row{display:flex;align-items:center;gap:10px}.tx-detail__debt-text{flex:1;font-size:var(--fs-meta);font-weight:700;color:var(--ink)}.tx-detail__debt-remove{border:none;background:none;color:var(--terracotta);padding:4px;cursor:pointer}.tx-detail__receipt{padding:10px}.tx-detail__receipt-img{display:block;width:100%;max-height:60vh;object-fit:contain;border-radius:var(--r-1)}.overview__mode{margin-top:12px}.overview__summary{margin-top:14px}.overview__nav{margin-top:12px;display:flex;align-items:center;justify-content:center;gap:16px}.overview__nav-arrow{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;margin:-10px 0;border:none;border-radius:var(--r-2);background:transparent;color:var(--header-text);opacity:.75;cursor:pointer;padding:0}.overview__nav-label{font-size:var(--fs-meta);font-weight:600}.overview__balance{margin-top:11px;font-size:var(--fs-caps);font-weight:600;opacity:.85;font-variant-numeric:tabular-nums}.overview__saldo.is-positive{color:var(--on-header-positive)}.overview__saldo.is-negative{color:var(--over-soft)}.overview__heading{margin-bottom:8px}.overview__heading-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.overview__manage{display:inline-flex;align-items:center;min-height:44px;margin:-8px 0;color:var(--action-text);font-size:var(--fs-meta);font-weight:800;text-decoration:none}.overview__heading:not(:first-child){margin-top:20px}.overview__cat-card{padding:5px 16px}.overview__cat-row{padding:9px 0;border-bottom:1px solid var(--divider)}.overview__cat-row:last-child{border-bottom:none}.overview__cat-top{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.overview__cat-name{font-size:var(--fs-body);font-weight:700}.overview__cat-amount{font-size:var(--fs-micro);font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.overview__cat-amount.is-over{color:var(--over-red);font-weight:800}.overview__cat-bar{position:relative;margin-top:5px;height:6px;border-radius:3px;background:var(--track-bg);overflow:hidden}.overview__cat-tick{position:absolute;top:0;bottom:0;width:2px;margin-left:-1px;background:var(--ink);opacity:.45}.overview__cat-complete{margin-left:3px;vertical-align:-2px;color:var(--green-dark)}.overview__group-toggle,.overview__group-head{display:flex;align-items:center;gap:8px;width:100%;min-height:44px;padding:0;border:none;background:none;color:var(--text-2);font:inherit;font-size:var(--fs-meta);font-weight:700;text-align:left;cursor:pointer}.overview__group-toggle{justify-content:center}.overview__group-head{min-height:52px;color:var(--ink)}.overview__group-icon{color:var(--text-2)}.overview__group-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.overview__group-title{font-size:var(--fs-body)}.overview__group-meta{font-size:var(--fs-micro);color:var(--muted);font-variant-numeric:tabular-nums}.overview__fixed-card{margin-top:12px}.overview__fixed-card .overview__group-head[aria-expanded=true]{border-bottom:1px solid var(--divider)}.overview__cat-bar-fill{display:block;height:6px;border-radius:3px;background:var(--progress-fill)}.overview__cat-bar-fill.is-over{background:var(--over-red)}.overview__trend{margin-top:12px;padding:14px 16px}.overview__trend-head{display:flex;align-items:baseline;justify-content:space-between}.overview__trend-sub{font-size:var(--fs-caps);font-weight:700;color:var(--muted-light)}.overview__trend-bars{margin-top:10px;display:flex;align-items:flex-end;gap:14px;height:96px}.overview__trend-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;height:100%;justify-content:flex-end}.overview__trend-track{flex:1;width:100%;min-height:0;display:flex;align-items:flex-end}.overview__trend-bar{flex-shrink:0;width:100%;border-radius:var(--r-1) var(--r-1) 4px 4px;background:var(--track-muted)}.overview__trend-bar.is-current{background:var(--ochre)}.overview__trend-label{font-size:var(--fs-caps);font-weight:700;color:var(--muted-light)}.overview__trend-label.is-current{font-weight:800;color:var(--ochre-text)}.recurring__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.recurring__card{padding:4px 16px}.recurring__card.is-inactive{opacity:.55}.recurring__summary{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;width:100%;border:none;background:transparent;padding:11px 0;text-align:left;cursor:pointer;color:inherit;font-family:var(--font-body)}.recurring__main{display:flex;flex-direction:column;gap:3px;min-width:0}.recurring__note{font-size:var(--fs-body);font-weight:700;color:var(--ink)}.recurring__meta{font-size:var(--fs-caps);font-weight:700;color:var(--muted)}.recurring__meta.is-income{color:var(--green-dark)}.recurring__next{font-size:var(--fs-caps);font-weight:600;color:var(--muted-light)}.recurring__category{flex:none;font-size:var(--fs-micro);font-weight:700;color:var(--muted);white-space:nowrap}.recurring__editor{display:flex;flex-direction:column;gap:12px;padding:8px 0 14px;border-top:1px solid var(--divider);margin-top:2px}.recurring__editor-title{margin:0 0 4px;font-family:var(--font-serif, "Lora");font-size:var(--fs-title-m)}.recurring__field{display:flex;flex-direction:column;gap:5px}.recurring__field-label{font-size:var(--fs-caps);font-weight:700;color:var(--muted)}.recurring__amount-input{display:flex;align-items:center;gap:8px}.recurring__amount-input input{flex:1}.recurring__amount-suffix{font-size:var(--fs-meta);font-weight:700;color:var(--muted)}.recurring__categories{display:flex;flex-wrap:wrap;gap:8px}.recurring__category-pick{border:1px solid var(--divider);border-radius:var(--r-2);padding:8px 12px;font-family:var(--font-body);font-size:var(--fs-meta);font-weight:700;color:var(--ink);background:var(--card);cursor:pointer}.recurring__category-pick.is-selected{background:var(--olive);color:var(--header-text);border-color:var(--olive)}.recurring__checkbox{display:flex;align-items:center;gap:8px;font-size:var(--fs-meta);font-weight:700;color:var(--ink);cursor:pointer}.recurring__error{margin:0;font-size:var(--fs-micro);font-weight:700;color:var(--over-red-text)}.recurring__editor-actions{display:flex;gap:9px}.recurring__editor-actions .button{flex:1;gap:6px}.recurring__add{margin-top:12px}.recurring__info{margin-top:16px;display:flex;align-items:center;gap:6px;font-size:var(--fs-caps);font-weight:700;color:var(--muted-light)}@media(min-width:900px){.transactions__row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:7px 16px}.transactions__row .list-row__text{display:contents}.transactions__row .list-row__title{min-width:0;overflow:hidden}.transactions__row .list-row__meta{justify-self:end;white-space:nowrap}.transactions__row .list-row__trailing{justify-self:end;justify-content:flex-end;min-width:84px}.categories__sections{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}}@media(hover:hover)and (min-width:900px){.split-panel__tile,.categories__checkbox,.overview__nav-arrow{transition:background var(--dur-quick) var(--ease-out),border-color var(--dur-quick) var(--ease-out),transform var(--dur-quick) var(--ease-out)}.split-panel__tile:not(.is-selected):hover,.categories__checkbox:hover,.overview__nav-arrow:hover{background:var(--hover-tint);cursor:pointer}}.kk-scan-btn{position:relative;overflow:hidden}.overview__trend-value{font-size:var(--fs-caps);font-weight:700;color:var(--muted);margin-bottom:3px;white-space:nowrap}.overview__trend-value.is-current{color:var(--ochre);font-weight:800}.recurring__totals{display:flex;align-items:stretch;gap:8px;margin-top:12px}.recurring__total{flex:1;display:flex;flex-direction:column;gap:2px;padding:8px 12px;border-radius:var(--r-2);background:var(--fill-on-canvas);text-align:center}.recurring__total-label{font-size:var(--fs-caps);font-weight:700;color:var(--text-on-canvas-2)}.recurring__total-value{font-size:var(--fs-body);font-weight:800;color:var(--header-text);white-space:nowrap}.recurring__total.is-remaining{background:var(--fill-on-canvas-strong)}.recurring__total-value.is-negative{color:var(--on-header-negative)}.recurring__list{margin-top:14px}.budget-pending{margin-top:10px;padding:4px 0}.budget-pending__row{display:flex;align-items:center;gap:11px;width:100%;padding:10px 15px;border:none;background:transparent;cursor:pointer;text-align:left;font-family:var(--font-body);color:var(--ink)}.budget-pending__row+.budget-pending__row{border-top:1px solid var(--divider)}.budget-pending__status{flex-shrink:0;display:grid;place-items:center}.budget-pending__status--pending{color:var(--ochre)}.budget-pending__status--ready{color:var(--support-green)}.budget-pending__status--failed{color:var(--terracotta)}.budget-pending__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.budget-pending__title{font-size:var(--fs-body);font-weight:700}.budget-pending__sub{font-size:var(--fs-micro);font-weight:600;color:var(--muted)}.budget-pending__error{margin:8px 2px 0;font-size:var(--fs-meta);font-weight:700;color:var(--terracotta)}.budget-pending__popover{position:relative;display:flex;flex-direction:column;gap:10px}.budget-pending__image{width:100%;max-height:38vh;object-fit:contain;border-radius:var(--r-list);background:var(--tile-bg)}.budget-pending__amount{font-size:var(--fs-title-l);font-weight:800;color:var(--ink)}.budget-pending__meta,.budget-pending__hint{font-size:var(--fs-meta);font-weight:600;color:var(--muted);margin:0}.budget-pending__actions{display:flex;flex-wrap:wrap;gap:8px}.budget-pending__actions .button{flex:1 1 auto}.budget-pending__delete{position:absolute;top:10px;right:10px;border:none;background:var(--card);border-radius:50%;padding:6px;cursor:pointer;color:var(--muted);box-shadow:var(--shadow-card-sm)}.kk-scanjob{display:flex;align-items:center;gap:9px;margin:10px 0 0;padding:10px 14px;border-radius:var(--r-2);background:var(--card);border:1px solid var(--divider);font-size:var(--fs-meta);font-weight:600;color:var(--ink)}.kk-scanjob__text{flex:1;min-width:0}.kk-scanjob--failed{background:var(--over-red-bg);color:var(--over-red-text);border:none}.kk-scanjob__dismiss{border:none;background:none;padding:4px;cursor:pointer;color:inherit;display:grid;place-items:center}.overview__cat-toggle{display:block;width:100%;padding:0;border:none;background:none;font:inherit;color:inherit;text-align:left;cursor:pointer}.overview__cat-amount.is-income{color:var(--green-dark)}.overview__entries{margin-top:7px;border-top:1px dashed var(--divider);padding-top:3px}.overview__entry{padding-inline:0}.overview__entry-amount{font-weight:700}.abschluss__headline{margin-top:10px;display:flex;align-items:baseline;gap:10px}.abschluss__headline .abschluss__amount{font-size:var(--fs-glance-m);font-weight:800}.abschluss__headline .amount--positive{color:var(--on-header-positive)}.abschluss__headline .amount--negative{color:var(--over-soft)}.abschluss__headline-sub{font-size:var(--fs-micro);color:var(--muted-light)}.abschluss__card{padding:5px 16px}.abschluss__row{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid var(--divider);font-size:var(--fs-body)}.abschluss__row:last-child{border-bottom:none}.abschluss__label{font-weight:600;min-width:0}.abschluss__hint{display:block;font-size:var(--fs-caps);font-weight:400;color:var(--muted)}.abschluss__amount{font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.abschluss__amount.is-strong{font-weight:800}.abschluss__amount.is-muted{color:var(--muted)}.abschluss__row.is-subtotal,.abschluss__row.is-total{border-top:2px solid var(--divider)}.abschluss__row.is-total .abschluss__label,.abschluss__row.is-subtotal .abschluss__label{font-weight:800}.abschluss__row.is-fund{padding-left:12px;font-size:var(--fs-meta)}.abschluss__row.is-fund .abschluss__label{font-weight:500}.abschluss__explainer{margin:10px 2px 0;font-size:var(--fs-micro);color:var(--muted)}.more__identity{margin-top:12px;display:flex;align-items:center;gap:14px}.more__avatars{display:flex}.more__avatar{flex:none;border:2.5px solid var(--olive)}.more__avatar+.more__avatar{margin-left:-10px}.more__identity-text{flex:1}.more__household{font-size:var(--fs-title-s);font-weight:700}.more__sync{display:flex;align-items:center;gap:5px;font-size:var(--fs-caps);font-weight:600;opacity:.65}.more__sync .icon{font-size:14px}.more__section+.more__section{margin-top:14px}.more__group{margin-top:8px;padding:3px 0}.more-list{list-style:none;margin:0;padding:0}.more-list li+li{border-top:1px solid var(--divider)}.settings__section+.settings__section{margin-top:16px}.settings__card{margin-top:8px;padding:14px 16px}.settings__account-name{font-size:var(--fs-title-s);font-weight:800}.settings__account-email{margin-top:2px;font-size:var(--fs-meta);font-weight:600;color:var(--muted)}.settings__account{padding-bottom:12px}.settings__fold{border-top:1px solid var(--divider)}.settings__card>.settings__fold:first-child{border-top:none}.settings__fold-summary{min-height:48px;display:flex;align-items:center;gap:8px;list-style:none;cursor:pointer}.settings__fold-summary::-webkit-details-marker{display:none}.settings__fold-label{flex:1 1 auto;min-width:0;font-size:var(--fs-body);font-weight:700;color:var(--ink)}.settings__fold-meta{font-size:var(--fs-caps);font-weight:700;color:var(--text-2)}.settings__fold-chevron{color:var(--muted);transition:transform var(--dur-quick) var(--ease-out)}.settings__fold[open] .settings__fold-chevron{transform:rotate(180deg)}.settings__fold-body{padding-bottom:10px}.settings-sync__state{display:inline-flex;align-items:center;gap:6px}.settings-sync--idle .settings-sync__icon{color:var(--green-dark)}.settings-sync--syncing .settings-sync__icon{color:var(--muted);animation:settings-sync-spin 1.2s linear infinite}.settings-sync--error .settings-sync__icon{color:var(--ochre-text)}.settings-sync--auth-required .settings-sync__icon{color:var(--over-red-text)}@keyframes settings-sync-spin{to{transform:rotate(360deg)}}.settings__appear{animation:settings-appear var(--dur-quick) var(--ease-out)}@keyframes settings-appear{0%{opacity:0}}.settings__logout{margin-top:20px;display:flex;justify-content:center}.settings__logout-button{min-height:44px;padding:0 16px;border:none;background:none;color:var(--over-red-text);font-family:var(--font-body);font-size:var(--fs-body);font-weight:800;cursor:pointer}.settings__link{display:inline-flex;align-items:center;gap:6px;color:var(--terracotta);text-decoration:none;font-size:var(--fs-body);font-weight:800}.settings__error{margin:10px 0 0;font-size:var(--fs-micro);font-weight:700;color:var(--over-red-text)}@media(min-width:1100px){.sheet:has(.settings__section){display:grid;grid-template-columns:1fr 1fr;grid-template-areas:"account device" "family exports" "tools tools" "info info" "logout logout";gap:16px 20px;align-items:start}.settings__section+.settings__section{margin-top:0}.sheet>[data-area=account]{grid-area:account}.sheet>[data-area=device]{grid-area:device}.sheet>[data-area=family]{grid-area:family}.sheet>[data-area=exports]{grid-area:exports}.sheet>[data-area=tools]{grid-area:tools}.sheet>[data-area=info]{grid-area:info}.sheet>[data-area=logout]{grid-area:logout}}@media(hover:hover)and (min-width:900px){.settings__link{transition:color var(--dur-quick) var(--ease-out)}.settings__link:hover{color:var(--terracotta-light-text)}}.settings-children__row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--divider)}.settings-children__emoji{font-size:22px}.settings-children__name{font-weight:700;font-size:var(--fs-body)}.settings-children__age{margin-left:auto;font-size:var(--fs-micro);color:var(--muted)}.settings-children__row button{width:44px;height:44px;margin:-8px -12px -8px 0;border:none;background:transparent;color:var(--muted);cursor:pointer;display:grid;place-items:center}.settings-children__add{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:9px 14px;border:1.5px dashed var(--border-dashed);border-radius:var(--r-2);background:transparent;color:var(--terracotta);font-family:var(--font-body);font-size:var(--fs-body);font-weight:700;cursor:pointer}.settings-children__form{display:flex;flex-direction:column;gap:10px;margin-top:10px}.settings-children__form-row{display:flex;gap:8px}.settings-children__label{display:flex;align-items:center;gap:8px;font-size:var(--fs-body);font-weight:700}.settings-children__input{flex:1 1 auto;min-width:0}.settings-children__actions{display:flex;justify-content:flex-end;gap:8px}.settings__jobcard{display:flex;align-items:center;gap:10px;margin-top:8px;padding:10px 14px;border:1px solid var(--ochre);border-radius:var(--r-2);background:var(--card);font-size:var(--fs-meta);font-weight:600;color:var(--ink)}.settings__jobcard-text{flex:1;min-width:0}.settings__jobcard-dismiss{border:none;background:none;padding:4px;cursor:pointer;color:var(--muted);display:grid;place-items:center}.settings__linklike{border:none;background:none;padding:0;color:inherit;font:inherit;text-decoration:underline;cursor:pointer}.expense-entry__toggles{margin-top:10px;padding:10px 14px}.expense-entry__chips--date{padding-bottom:9px;margin-bottom:9px;border-bottom:1px solid var(--divider)}.expense-entry__chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.expense-entry__chip{flex:0 0 auto;padding:6px 11px;border:1px solid var(--divider);border-radius:var(--r-pill);background:transparent;color:var(--muted);font:inherit;font-size:var(--fs-micro);font-weight:700}.expense-entry__chip.is-active{border-color:var(--terracotta);background:var(--terracotta-light);color:var(--terracotta-light-text)}.expense-entry__chip--receipt{display:inline-flex;align-items:center;gap:4px}.expense-entry__chip--receipt:disabled{opacity:.55}.expense-entry__funds{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px}.expense-entry__fund-prefix{font-size:var(--fs-caps);font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--text-2)}.expense-entry__toggle-detail{display:flex;align-items:center;gap:10px;padding:12px 0 2px;font-size:var(--fs-meta);font-weight:700;color:var(--muted)}.expense-entry__debtor,.expense-entry__note{flex:1}.expense-entry__debtor::placeholder,.expense-entry__note::placeholder{color:var(--muted-light);font-weight:600}.expense-entry__debtor-block{display:flex;flex-direction:column;gap:8px}.expense-entry__debtor-chips{display:flex;flex-wrap:nowrap;gap:6px;overflow-x:auto;scrollbar-width:none}.expense-entry__debtor-chip{flex:none;white-space:nowrap}.expense-entry__fuel{display:flex;gap:9px;margin-top:8px}.expense-entry__fuel-field{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:3px;font-size:var(--fs-caps);font-weight:700;color:var(--muted)}.entry-templates__title{margin:0 0 12px;font-family:var(--font-heading);font-size:var(--fs-title-m);color:var(--ink)}.entry-templates__group+.entry-templates__group{margin-top:16px}.entry-templates__label{margin:0 0 6px;font-size:var(--fs-caps);font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--text-2)}.entry-templates__rows{overflow:hidden;border:1px solid var(--divider);border-radius:var(--r-list)}.pending-header__label{margin-top:12px;font-size:var(--fs-caps);font-weight:600;letter-spacing:1.5px;opacity:.55}.pending-header__sum{margin-top:2px;display:flex;align-items:baseline;gap:8px}.pending-header__amount{font-family:var(--font-heading);font-size:var(--fs-glance-l);font-weight:800;letter-spacing:-1.5px}.pending-header__currency{font-size:var(--fs-body);font-weight:600;opacity:.6}.pending-header__count{margin-left:auto}.pending-header__oldest{margin-top:8px;font-size:var(--fs-caps);font-weight:600;opacity:.65}.pending-cards{margin-top:8px;display:flex;flex-direction:column;gap:10px}.pending-card{background:var(--card);border-radius:var(--r-card);box-shadow:var(--elev-1);padding:14px 16px}.pending-card__main{display:flex;align-items:center;gap:12px}.pending-card__avatar{flex:none}.pending-card__text{flex:1;display:flex;flex-direction:column;min-width:0}.pending-card__name{font-size:var(--fs-title-s);font-weight:800}.pending-card__meta{font-size:var(--fs-caps);color:var(--muted);font-weight:600}.pending-card__invoice-chip{margin-left:6px;padding:2px 8px;border-radius:var(--r-pill);background:var(--ochre);color:var(--olive-dark);font-size:var(--fs-caps);font-weight:800;vertical-align:2px}.pending-invoice__open{margin-bottom:12px}.pending-invoice{display:flex;flex-direction:column;gap:10px;padding:12px;margin-bottom:12px;background:var(--card);border-radius:var(--r-3);box-shadow:var(--shadow-card-sm)}.pending-invoice__field{display:flex;flex-direction:column;gap:4px;font-size:var(--fs-meta);font-weight:700;color:var(--muted)}.pending-invoice__actions{display:flex;justify-content:flex-end;gap:8px}.pending-card__amount{font-size:var(--fs-section);font-weight:800}.pending-card__actions{margin-top:10px;display:flex;align-items:center;gap:8px;justify-content:flex-end}.pending-card__writeoff{margin-right:auto;border:none;background:none;color:var(--muted-light);font-family:var(--font-body);font-size:var(--fs-micro);font-weight:700;cursor:pointer;padding:6px 4px}.pending-card__writeoff:disabled{opacity:.5;cursor:default}.pending-card__confirm{margin-top:12px;border-top:1px solid var(--divider);padding-top:12px}.pending-card__amount-field{display:flex;align-items:center;gap:10px}.pending-card__amount-label{font-size:var(--fs-meta);font-weight:700;color:var(--muted)}.pending-card__amount-field input{flex:1;text-align:right}.pending-card__no-category{margin-top:8px;font-size:var(--fs-caps);font-weight:700;color:var(--over-red)}.pending-card__correction{margin-top:8px;font-size:var(--fs-caps);font-weight:700;color:var(--green-deep)}.kk-flow__persons{margin-top:8px;display:flex;flex-wrap:wrap;gap:8px}.kk-flow__person-chip{border:none;border-radius:var(--r-2);padding:11px 18px;background:var(--tile-bg);color:var(--ink);font-family:var(--font-body);font-size:var(--fs-title-s);font-weight:700;cursor:pointer}.kk-flow__person-chip.is-active{background:var(--ochre);color:var(--olive-dark);font-weight:800}.kk-flow__stand{margin-top:10px;font-size:var(--fs-meta);font-weight:700;color:var(--muted)}.kk-flow__bill,.kk-flow__split{margin-top:8px;display:flex;flex-direction:column;gap:10px}.kk-flow__field{display:flex;flex-direction:column;gap:5px}.kk-flow__field-label{font-size:var(--fs-micro);font-weight:700;color:var(--muted)}.kk-flow__reimbursed{display:flex;align-items:baseline;justify-content:space-between}.kk-flow__reimbursed-amount{font-size:var(--fs-section);font-weight:800;color:var(--ink)}.kk-flow__sum{font-size:var(--fs-caps);font-weight:700;color:var(--muted)}.pending-card__confirm-actions{margin-top:12px;display:flex;align-items:center;gap:8px;justify-content:flex-end}.pending-history{margin-top:14px}.pending-history__toggle{display:flex;align-items:center;gap:5px;border:none;background:none;color:var(--muted);font-family:var(--font-body);font-size:var(--fs-meta);font-weight:700;cursor:pointer;padding:4px 0}.pending-history__list{margin:6px 0 0;padding:4px 0;list-style:none;background:var(--card);border-radius:var(--r-list);box-shadow:var(--elev-1)}.pending-history__item{display:flex;align-items:center;gap:10px;padding:9px 16px}.pending-history__item+.pending-history__item{border-top:1px solid var(--divider)}.pending-history__name{flex:1;font-size:var(--fs-body);font-weight:700}.pending-history__status{font-size:var(--fs-caps);font-weight:700;color:var(--muted-light)}.pending-history__amount{font-size:var(--fs-body);font-weight:800;color:var(--muted)}.pending-kk__heading{margin-top:16px}.pending-kk{margin-top:8px}.pending-info{margin-top:12px;display:flex;align-items:center;gap:8px;padding:0 4px;font-size:var(--fs-caps);color:var(--muted-light);font-weight:700}.pending-info .icon{font-size:15px}.pending-group+.pending-group{margin-top:14px}.pending-group__name{margin:0 2px 7px;display:flex;align-items:baseline;justify-content:space-between;font-family:var(--font-serif);font-size:var(--fs-title-s);font-weight:600;color:var(--muted)}.pending-group__sum{font-family:var(--font-body);font-size:var(--fs-meta);font-weight:800;font-variant-numeric:tabular-nums}.kk-flow__person-hint{margin:8px 2px 0;font-size:var(--fs-meta);font-weight:700;color:var(--terracotta)}.kk-flow__actions{margin-top:12px;display:flex;flex-direction:column;gap:10px}@media(min-width:900px){.kk-flow__actions{flex-direction:row}.kk-flow__actions .button{flex:1}}.pending-month{background:var(--card);border-radius:var(--r-list);box-shadow:var(--shadow-card-sm);margin:8px 0 16px}.pending-month__amount{font-size:var(--fs-body);font-weight:800}.pending-month__totals{display:flex;flex-wrap:wrap;gap:4px 14px;padding:9px 14px 6px;border-top:1px solid var(--divider);font-size:var(--fs-micro);font-weight:700;color:var(--muted)}.pending-month__totals b{color:var(--ink)}.settings__insured-list{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:8px}.settings__insured-item{display:flex;flex-direction:column;gap:8px}.settings__insured-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.settings__consumed{display:flex;flex-direction:column;gap:6px;padding:8px 0 2px;border-top:1px dashed var(--divider)}.settings__consumed-label{font-size:var(--fs-caps);font-weight:700;color:var(--muted)}.settings__consumed-row{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.settings__consumed-row .settings__insured-input{flex:1;min-width:120px}.settings__insured-text{display:flex;flex-direction:column}.settings__insured-name{font-size:var(--fs-body);font-weight:800;color:var(--ink)}.settings__insured-meta{font-size:var(--fs-caps);font-weight:600;color:var(--muted)}.settings__insured-archive{min-height:44px;border:none;background:none;padding:4px 6px;font-family:var(--font-body);font-size:var(--fs-micro);font-weight:700;color:var(--muted);cursor:pointer}.settings__form{display:flex;flex-direction:column;gap:8px;padding:10px 0;border-top:1px solid var(--divider)}.settings__form-label{font-size:var(--fs-meta);font-weight:800;color:var(--muted)}.settings__form-row{display:flex;gap:8px;align-items:center}.settings__form-row .settings__input{flex:1 1 0;min-width:0}.settings__form-ok{margin:0;font-size:var(--fs-micro);font-weight:700;color:var(--green-dark)}.settings__insured-form{display:flex;flex-direction:column;gap:8px;padding-top:10px;border-top:1px solid var(--divider)}@media(min-width:900px){.settings__form,.settings__insured-form{max-width:420px}}.shopping-input-wrap{margin-top:12px;position:relative}.shopping-input{gap:10px;padding-right:8px}.shopping-input__add{width:32px;height:32px;border:none;border-radius:var(--r-1);background:var(--ochre);color:var(--olive-dark);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.shopping-input__hint{margin:6px 2px 0;font-size:var(--fs-meta);font-weight:700;color:var(--terracotta)}.shopping-suggest{position:absolute;top:52px;left:0;right:0;z-index:5;margin:0;padding:4px 0;list-style:none;background:var(--popover-bg);border-radius:var(--r-2);box-shadow:var(--elev-3)}.shopping-suggest__row{display:flex;align-items:center;gap:10px;width:100%;padding:9px 15px;border:none;background:transparent;cursor:pointer;text-align:left}.shopping-suggest__icon{color:var(--popover-muted)}.shopping-suggest__text{flex:1;min-width:0;font-size:var(--fs-meta);font-weight:700;color:var(--header-text)}.shopping-suggest__match{color:var(--ochre)}.shopping-suggest__hint{font-weight:600;color:var(--popover-muted)}.shopping-suggest__cat{flex-shrink:0;font-size:var(--fs-caps);font-weight:700;color:var(--popover-muted)}.shopping-group+.shopping-group{margin-top:10px}.shopping-group__heading{display:flex;align-items:center;gap:8px}.shopping-group__card{margin-top:6px;padding:0}.shopping-row{display:flex;align-items:center;gap:12px;min-height:48px;padding:9px 15px;box-sizing:border-box;cursor:pointer;-webkit-user-select:none;user-select:none}.shopping-row+.shopping-row{border-top:1px solid var(--divider)}.shopping-row.is-checked{opacity:.55}.shopping-row.is-checked .shopping-row__text{text-decoration:line-through}.shopping-row{--row-leave-height: 64px}.shopping-row__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.shopping-row__text{font-size:var(--fs-body);font-weight:700}.shopping-row__meta{display:flex;align-items:center;gap:6px;min-width:0}.shopping-row__qty{color:var(--muted-light);font-weight:600}.shopping-row__recipe{flex-shrink:1;min-width:0;max-width:100%;overflow:hidden}.shopping-row__chip-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shopping-row__offer{flex:none;display:inline-flex;align-items:center;gap:3px;padding:1px 7px;border:none;border-radius:var(--r-pill);background:var(--ochre);color:var(--olive-dark);font-family:var(--font-body);font-size:var(--fs-caps);font-weight:800;white-space:nowrap;vertical-align:1px;cursor:pointer}.shopping-offer-detail{display:flex;flex-direction:column;gap:6px}.shopping-offer-detail__head{display:flex;align-items:center;justify-content:space-between}.shopping-offer-detail__retailer{font-size:var(--fs-caps);font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--terracotta)}.shopping-offer-detail__discount{padding:2px 9px;border-radius:var(--r-pill);background:var(--ochre);color:var(--olive-dark);font-size:var(--fs-micro);font-weight:800}.shopping-offer-detail__name{font-size:var(--fs-section);font-weight:800;color:var(--ink)}.shopping-offer-detail__unit,.shopping-offer-detail__until,.shopping-offer-detail__promo-text{font-size:var(--fs-meta);font-weight:600;color:var(--muted)}.shopping-offer-detail__prices{display:flex;align-items:baseline;gap:8px}.shopping-offer-detail__promo{font-size:var(--fs-title-m);font-weight:800;color:var(--terracotta)}.shopping-offer-detail__normal{font-size:var(--fs-meta);color:var(--muted);text-decoration:line-through}.shopping-offer-detail__saving{font-size:var(--fs-micro);font-weight:700;color:var(--support-green)}.shopping-offer-detail__actions{margin-top:8px;display:flex;gap:8px}.shopping-offer-detail__actions .button{flex:1}.shopping-row__quantity{flex-shrink:0;display:inline-flex;padding:7px;margin:-7px -4px;border:none;border-radius:var(--r-1);background:transparent;color:var(--muted-light);cursor:pointer}@media(hover:none){.shopping-row__quantity{display:none}}@media(hover:hover){.shopping-row__quantity{opacity:0}.shopping-row:hover .shopping-row__quantity,.shopping-row__quantity:focus-visible{opacity:1}}.shopping-done-toggle{margin-top:10px;display:flex;justify-content:center}.shopping-done-toggle__btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border:none;border-radius:var(--r-pill);background:var(--tile-bg);color:var(--ghost);font-family:var(--font-body);font-size:var(--fs-meta);font-weight:800;cursor:pointer}.shopping-done-toggle__btn:disabled{opacity:.5;cursor:default}.shopping-regular__hint{margin:-2px 2px 8px;font-size:var(--fs-meta);font-weight:600;color:var(--text-2)}.shopping-regular__row{display:flex;align-items:center;width:100%}.shopping-regular__row+.shopping-regular__row{border-top:1px solid var(--divider)}.shopping-regular__add-btn{display:flex;align-items:center;gap:12px;flex:1;min-width:0;padding:10px 4px 10px 15px;border:none;background:transparent;cursor:pointer;text-align:left}.shopping-regular__row.is-on-list .shopping-regular__text{color:var(--muted)}.shopping-regular__add{color:var(--terracotta)}.shopping-regular__row.is-on-list .shopping-regular__add{color:var(--support-green)}.shopping-regular__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.shopping-regular__text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-body);font-weight:700}.shopping-regular__onlist{font-size:var(--fs-caps);font-weight:600;color:var(--muted)}.shopping-regular__interval{flex:0 0 auto;max-width:108px;padding:4px 22px 4px 6px;border:1px solid var(--divider);border-radius:var(--r-1);background:var(--select-chevron) no-repeat right 6px center;color:var(--muted);font:inherit;font-size:var(--fs-micro)}.shopping-regular__remove{display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:10px 15px 10px 4px;border:none;background:transparent;color:var(--muted-light);cursor:pointer}.shopping-promote{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 2px 14px;padding:12px 15px;background:var(--card);border:1px solid var(--divider);border-radius:var(--r-3);box-shadow:var(--elev-1)}.shopping-promote__text{flex:1;min-width:0;font-size:var(--fs-body);font-weight:700;color:var(--ink)}.shopping-promote__actions{display:flex;flex-shrink:0;gap:8px}.shopping-qty__title{font-size:var(--fs-body);font-weight:800;margin-bottom:12px}.shopping-qty__stepper{display:flex;align-items:center;justify-content:center;gap:18px;margin-bottom:14px}.shopping-qty__step{width:40px;height:40px;border:none;border-radius:var(--r-2);background:var(--fill-on-canvas-strong);color:var(--header-text);font-size:20px;font-weight:800;cursor:pointer}.shopping-qty__value-input{width:72px;text-align:center;border:none;border-bottom:2px solid var(--line-on-canvas);background:transparent;color:var(--header-text);font-family:var(--font-heading);font-size:var(--fs-title-l);font-weight:800}.shopping-qty__value-input:focus{outline:none;border-bottom-color:var(--ochre)}.shopping-qty__value-input::placeholder{font-size:var(--fs-body);font-weight:600;opacity:.55}.shopping-qty__close{width:100%;padding:10px 0;border:none;border-radius:var(--r-2);background:var(--fill-on-canvas-strong);color:var(--header-text);font-family:var(--font-body);font-size:var(--fs-body);font-weight:800;cursor:pointer}.shopping-qty__close--primary{background:var(--ochre);color:var(--olive-dark)}.shopping-qty__units{margin-bottom:14px}.shopping-qty__actions{display:flex;gap:8px}.shopping-edit__title{margin:0 0 14px;font-family:var(--font-heading);font-size:var(--fs-title-m);color:var(--ink)}.shopping-edit__group{margin-bottom:16px}.shopping-edit__label{display:block;margin-bottom:6px;font-size:var(--fs-caps);font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--text-2)}.shopping-edit__field{width:100%}.shopping-edit__qty{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:10px}.shopping-edit__qty-input{width:84px;text-align:center}.shopping-edit__chips{display:flex;flex-wrap:wrap;gap:6px}.shopping-edit__actions{display:flex;flex-direction:column;gap:8px;margin-top:4px}.shopping-bulk__mic{display:flex;align-items:center;gap:10px;width:100%;margin:12px 0;padding:10px 12px;border:none;border-radius:var(--r-2);background:var(--fill-on-canvas);color:var(--header-text);font-family:var(--font-body);font-size:var(--fs-meta);font-weight:700;cursor:pointer;text-align:left}.shopping-bulk__mic.is-listening .icon{color:var(--terracotta);animation:shopping-bulk-pulse 1.4s ease-in-out infinite}@keyframes shopping-bulk-pulse{0%,to{opacity:1}50%{opacity:.45}}.shopping-bulk__empty{margin:0 0 12px;font-size:var(--fs-meta);color:var(--text-on-canvas-2)}.shopping-bulk__error{margin:0 0 12px;font-size:var(--fs-meta);color:var(--terracotta);font-weight:700}.shopping-bulk__lines{list-style:none;margin:0 0 12px;padding:0;max-height:40vh;overflow-y:auto}.shopping-bulk__line{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 2px;border-bottom:1px solid var(--fill-on-canvas);font-size:var(--fs-body);font-weight:700}.shopping-bulk__line.is-partial{color:var(--text-on-canvas-2);font-style:italic;font-weight:600}.shopping-bulk__line button{border:none;background:transparent;color:var(--terracotta);cursor:pointer;display:grid;place-items:center;padding:4px}.shopping-bulk__actions{display:flex;gap:8px}.shopping-bulk__actions .shopping-qty__close{width:auto;flex:1;padding:10px 12px}.shopping-bulk__add-all{flex:2;border:none;border-radius:var(--r-2);padding:10px 12px;background:var(--ochre);color:var(--olive-dark);font-family:var(--font-body);font-size:var(--fs-body);font-weight:800;cursor:pointer}.shopping-bulk__add-all:disabled{opacity:.5;cursor:default}.shopping-store-toggle{display:inline-flex;align-items:center;gap:5px;min-height:32px;font-size:var(--fs-meta)}.shopping-store-progress{margin-top:6px;display:flex;flex-direction:column;gap:8px}.shopping-store-progress__label{font-family:var(--font-body);font-size:var(--fs-meta);font-weight:700;opacity:.8;font-variant-numeric:tabular-nums}.shopping-store-progress__track{display:block;height:6px;border-radius:3px;background:var(--fill-on-canvas-strong);overflow:hidden}.shopping-store-progress__fill{display:block;height:100%;border-radius:3px;background:var(--ochre);transition:width var(--dur-base) var(--ease-out)}.sheet.is-store-mode .shopping-row{min-height:56px;padding-block:12px}.sheet.is-store-mode .shopping-row__text{font-size:var(--fs-title-s)}.sheet.is-store-mode .row-leave{animation-delay:calc(1.5s - var(--dur-base))}@media(hover:hover)and (min-width:900px){.shopping-row,.shopping-regular__row,.shopping-suggest__row{transition:background var(--dur-quick) var(--ease-out)}.shopping-row:not(.is-leaving):hover,.shopping-regular__row:hover,.shopping-suggest__row:hover{background:var(--hover-tint);cursor:pointer}}@media(min-width:900px){.shopping-input-wrap{max-width:560px}}@media(min-width:1100px){.shopping-groups{columns:2 380px;column-gap:22px}.shopping-groups .shopping-group{break-inside:avoid}}.essen-week-cta{margin-top:12px;width:100%;display:flex;align-items:center;gap:8px;background:var(--ochre);color:var(--olive-dark);border:none;border-radius:var(--r-2);padding:11px 15px;cursor:pointer}.essen-week-cta__label{flex:1;text-align:left;font-size:var(--fs-meta);font-weight:700}.essen-propose-cta{margin:0 0 10px}.essen-propose-cta--quiet{background:transparent;border:1.5px dashed var(--border-dashed);color:var(--text-2)}.essen-propose-cta:disabled{opacity:.6;cursor:default}.essen-propose__dismiss{border:none;background:none;padding:0;color:var(--terracotta);font-family:var(--font-body);font-size:inherit;font-weight:800;text-decoration:underline;cursor:pointer}.essen-propose__title{margin:0 0 12px;font-family:var(--font-heading);font-size:var(--fs-title-m);color:var(--ink)}.essen-propose__list{list-style:none;margin:0 0 14px;padding:0}.essen-propose__row{display:flex;align-items:baseline;gap:10px;padding:8px 0;border-bottom:1px solid var(--divider)}.essen-propose__row:last-child{border-bottom:none}.essen-propose__day{flex-shrink:0;width:52px;font-size:var(--fs-micro);font-weight:800;color:var(--muted)}.essen-propose__name{flex:1;min-width:0;font-size:var(--fs-body);font-weight:700;color:var(--ink)}.essen-propose__new{margin-left:6px;padding:1px 7px;border-radius:var(--r-pill);background:var(--ochre);color:var(--olive-dark);font-size:var(--fs-caps);font-weight:800}.essen-propose__link{display:block;font-size:var(--fs-micro);font-weight:700;color:var(--terracotta);text-decoration:none}.essen-propose__actions{display:flex;flex-wrap:wrap;gap:8px}.essen-propose__actions .button{flex:1 1 auto}.essen-plan__card{margin-top:8px;background:var(--card);border-radius:var(--r-card);box-shadow:var(--shadow-card);padding:3px 0}.essen-plan__divider{height:1px;background:var(--divider);margin:0 16px}.essen-day{display:flex;align-items:center;gap:12px;padding:10px 15px 10px 23px}.essen-day.is-today{background:var(--tile-bg);border-radius:var(--r-list);margin:5px 8px;padding-left:15px;border-left:3px solid var(--ochre)}.essen-plan__zone{margin:14px 16px 4px;font-size:var(--fs-caps);font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted-light)}.essen-plan__zone.is-ahead{color:var(--muted)}.essen-plan__past-toggle{display:flex;align-items:center;gap:4px;width:100%;min-height:40px;margin:2px 0 0;padding:8px 12px;border:none;background:transparent;color:var(--muted-light);font-family:var(--font-body);font-size:var(--fs-caps);font-weight:800;letter-spacing:1.2px;text-transform:uppercase;text-align:left;cursor:pointer}.essen-plan__past-toggle[aria-expanded=true]{color:var(--muted)}.essen-day__tile.is-past:not(.is-empty){background:transparent;box-shadow:inset 0 0 0 1px var(--divider)}.essen-day.is-past .essen-day__dish-name,.essen-day.is-past .essen-day__free{font-weight:700;color:var(--muted)}.essen-day__meals{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.essen-day__meal{display:flex;align-items:center;gap:8px;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.essen-day__meal.is-cooked .essen-day__dish-name,.essen-day__meal.is-cooked .essen-day__free{color:var(--muted)}button.essen-day__tile{border:none;padding:0;font:inherit;cursor:pointer}.essen-day__meal.is-dragging{opacity:.45}.essen-day.is-drop-target,.essen-plan__card.is-drop-target{outline:2px solid var(--ochre);outline-offset:-2px;border-radius:var(--r-list)}.essen-idea__add{display:flex;align-items:center;gap:8px;width:100%;padding:12px 23px;border:none;background:none;color:var(--muted);font-family:var(--font-body);font-size:var(--fs-body);font-weight:700;cursor:pointer}.essen-day__tile{width:42px;height:42px;flex-shrink:0;border-radius:var(--r-2);background:var(--tile-bg);color:var(--muted);display:flex;flex-direction:column;align-items:center;justify-content:center}.essen-day__tile.is-today{background:var(--olive);color:var(--header-text)}.essen-day__tile.is-empty{background:transparent;border:2px dashed var(--border-dashed);color:var(--muted-light)}.essen-day__weekday{font-size:var(--fs-caps);font-weight:800;opacity:.7}.essen-day__num{font-size:var(--fs-title-s);font-weight:800;line-height:1}.essen-day__body{flex:1;min-width:0}.essen-day__dish,.essen-day__free,.essen-day__empty{display:block;width:100%;text-align:left;border:none;background:transparent;padding:0;cursor:pointer;font-family:var(--font-body);color:var(--ink)}.essen-day__dish-name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:var(--fs-title-s);font-weight:800}.essen-day__onlist{max-width:100%;margin-top:3px}.essen-day__onlist-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.essen-day__sub{display:block;margin-top:2px;font-size:var(--fs-caps);color:var(--muted);font-weight:700}.essen-day__sub.is-done{color:var(--green-dark)}.essen-day__sub.is-rhythm{display:inline-flex;align-items:center;gap:4px;min-height:28px;padding:0;border:none;background:none;font-family:var(--font-body);color:var(--ochre-text);cursor:pointer}.essen-day__state{flex-shrink:0;display:grid;place-items:center;width:44px;height:44px;margin:-4px -8px -4px 0;border:none;border-radius:var(--r-2);background:transparent;color:var(--action-text);cursor:pointer}.essen-day__state.is-cook{color:var(--muted)}.essen-day__minutes{margin-left:6px;font-size:var(--fs-caps);font-weight:800;color:var(--muted);white-space:nowrap}.essen-day__free{font-size:var(--fs-body);font-weight:700;color:var(--muted);font-style:italic}.essen-day__empty{font-size:var(--fs-body);font-weight:700;color:var(--muted-light)}.essen-day__add{border:none;background:transparent;color:var(--terracotta);cursor:pointer;padding:0}.essen-day__actions{display:flex;align-items:center;gap:4px}.essen-day__shopped{border:none;background:transparent;color:var(--muted-light);cursor:pointer;padding:4px;display:flex;align-items:center}.essen-day__shopped.is-on{color:var(--support-green)}.essen-day__today-chip{flex-shrink:0;font-size:var(--fs-caps);font-weight:800;color:var(--olive-dark);background:var(--ochre);border-radius:var(--r-pill);padding:3px 9px}.essen-picker{margin:4px 12px 10px;background:var(--cream);border-radius:var(--r-list);padding:12px;display:flex;flex-direction:column;gap:8px}.essen-picker__search{width:100%}.essen-picker__list{display:flex;flex-direction:column;gap:4px;max-height:200px;overflow-y:auto}.essen-picker__recipe{text-align:left;border:none;background:var(--card);border-radius:var(--r-1);padding:9px 12px;font-family:var(--font-body);font-size:var(--fs-body);font-weight:700;color:var(--ink);cursor:pointer}.essen-picker__free-add{border:none;background:var(--terracotta-light);color:var(--terracotta-light-text);border-radius:var(--r-2);padding:9px 12px;text-align:left;font-family:var(--font-body);font-size:var(--fs-meta);font-weight:800;cursor:pointer}.essen-picker__actions{display:flex;flex-wrap:wrap;gap:8px}.essen-recipes__top{display:flex;align-items:center;gap:10px;padding-top:14px}.essen-recipes__search{flex:1;min-width:0;display:flex;align-items:center;gap:10px;height:44px}.essen-recipes__search-input{flex:1}.essen-recipes__chips{margin:10px -22px 0;padding:2px 22px;display:flex;flex-wrap:nowrap;gap:6px;overflow-x:auto;scrollbar-width:none}.essen-recipes__chips::-webkit-scrollbar{display:none}.essen-recipes__chips>.chip{flex:none}.essen-grid{margin-top:12px;display:grid;grid-template-columns:1fr 1fr;gap:11px}.essen-card{background:var(--card);border-radius:var(--r-list);box-shadow:var(--shadow-card-sm);overflow:hidden;content-visibility:auto;contain-intrinsic-size:auto 150px}.essen-card__photo{position:relative;width:100%;height:92px;border:none;cursor:pointer;background:repeating-linear-gradient(-45deg,var(--placeholder-a) 0 10px,var(--placeholder-b) 10px 20px);display:flex;align-items:center;justify-content:center}.essen-card__emoji{font-size:38px}.essen-card__img,.essen-detail__img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.essen-card__planned{position:absolute;top:8px;left:8px;font-size:var(--fs-caps);font-weight:800;background:var(--ochre);color:var(--olive-dark);border-radius:var(--r-pill);padding:2px 8px}.essen-card__body{padding:10px 12px 12px}.essen-card__name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;width:100%;text-align:left;border:none;background:transparent;padding:0;cursor:pointer;font-family:var(--font-body);font-size:var(--fs-body);font-weight:800;color:var(--ink)}.essen-card__match{display:inline-block;margin-top:3px;padding:1px 8px;border-radius:var(--r-pill);background:var(--ochre);color:var(--olive-dark);font-size:var(--fs-caps);font-weight:700;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.essen-card__meta-row{margin-top:2px;display:flex;align-items:center;justify-content:space-between}.essen-card__meta{font-size:var(--fs-caps);color:var(--muted);font-weight:700}.essen-card__fav{flex:none;display:grid;place-items:center;width:40px;height:40px;margin:-12px -12px -12px 0;border:none;border-radius:var(--r-2);background:transparent;cursor:pointer;padding:0;color:var(--muted-light)}.essen-card__fav[aria-pressed=true]{color:var(--terracotta)}.essen-add-menu__title{margin:0 0 12px;font-family:var(--font-heading);font-size:var(--fs-title-m);color:var(--ink)}.essen-add-menu__rows{overflow:hidden;border:1px solid var(--divider);border-radius:var(--r-list)}.essen-add-menu__rows .icon{color:var(--action-text)}.essen-recipes__add-from-search{width:fit-content;max-width:100%;margin:2px auto 0}.essen-create{display:flex;flex-direction:column;gap:12px;padding-bottom:16px}.essen-create__heading{margin:0;font-family:var(--font-serif);font-size:var(--fs-title-m);font-weight:600;color:var(--ink)}.essen-create__field{display:flex;flex-direction:column;gap:4px;flex:1}.essen-create__label{font-size:var(--fs-micro);font-weight:700;color:var(--muted)}.essen-create__row{display:flex;gap:10px}.essen-create__veg{display:flex;align-items:center;gap:8px;font-size:var(--fs-body);font-weight:700;color:var(--ink)}.essen-create__ingredients{display:flex;flex-direction:column;gap:8px}.essen-ing-row{display:flex;gap:6px;align-items:center}.essen-ing-row__name{flex:2;min-width:0}.essen-ing-row__amount{flex:1;min-width:0}.essen-ing-row__unit{width:68px;flex-shrink:0}.essen-ing-row__remove{border:none;background:transparent;color:var(--muted-light);cursor:pointer;padding:4px;display:flex}.essen-ing-row__remove:disabled{opacity:.35;cursor:default}.essen-create__add-ing{align-self:flex-start}.essen-create__actions{display:flex;gap:9px}.essen-create__actions .button{flex:1}.essen-detail{flex:1;display:flex;flex-direction:column;background:var(--cream)}.essen-detail__photo{position:relative;height:180px;background:repeating-linear-gradient(-45deg,var(--placeholder-a) 0 12px,var(--placeholder-b) 12px 24px);display:flex;align-items:center;justify-content:center}.essen-detail__emoji{font-size:64px}.essen-detail__planned{position:absolute;top:16px;left:16px;font-size:var(--fs-caps);font-weight:800;background:var(--ochre);color:var(--olive-dark);border-radius:var(--r-pill);padding:3px 10px}.essen-detail__back{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;color:var(--ink);text-decoration:none}.essen-detail__back.is-floating{position:absolute;top:12px;background:color-mix(in srgb,var(--card) 88%,transparent);box-shadow:var(--shadow-card-sm);left:12px;right:auto}.essen-detail__fav{position:absolute;bottom:12px;right:12px;width:40px;height:40px;border:none;border-radius:50%;background:var(--scrim-card);color:var(--muted-light);cursor:pointer;display:flex;align-items:center;justify-content:center}.essen-detail__fav[aria-pressed=true]{color:var(--terracotta)}.essen-detail__body{padding:18px 22px 24px}.essen-detail__title{margin:0;font-family:var(--font-serif);font-size:var(--fs-title-l);font-weight:600;color:var(--ink)}.essen-detail__meta{margin:4px 0 0;font-size:var(--fs-meta);font-weight:700;color:var(--muted)}.essen-detail__source{display:inline-flex;align-items:center;gap:5px;margin-top:6px;padding:0;border:none;background:none;font-family:var(--font-body);font-size:var(--fs-meta);font-weight:700;color:var(--ochre-text);text-decoration:underline;cursor:pointer}.essen-detail__summary{margin:6px 0 0;font-size:var(--fs-body);line-height:1.45;color:var(--ink)}.essen-detail__pages{display:flex;flex-direction:column;gap:10px}.essen-detail__page{display:block;width:100%;height:auto;border-radius:var(--r-2);background:var(--card);box-shadow:var(--shadow-card-sm)}.essen-import__error{margin:0;font-size:var(--fs-meta);font-weight:700;color:var(--over-red-text)}.essen-detail__servings{margin-top:16px;display:flex;align-items:center;justify-content:space-between}.essen-detail__servings-label{font-size:var(--fs-body);font-weight:800;color:var(--ink)}.essen-detail__stepper{display:flex;align-items:center;gap:12px}.essen-detail__servings-value{font-family:var(--font-heading);font-size:var(--fs-title-m);font-weight:800;min-width:24px;text-align:center}.essen-detail__section{margin:20px 0 8px}.essen-detail__ingredients{list-style:none;margin:0;padding:0;background:var(--card);border-radius:var(--r-list);box-shadow:var(--shadow-card-sm)}.essen-detail__ingredient{display:flex;align-items:center;justify-content:space-between;padding:11px 15px}.essen-detail__ingredient+.essen-detail__ingredient{border-top:1px solid var(--divider)}.essen-detail__ing-name{font-size:var(--fs-body);font-weight:700;color:var(--ink)}.essen-detail__ing-amount{font-size:var(--fs-meta);font-weight:800;color:var(--muted)}.essen-detail__steps{margin:0;padding:0 0 0 22px;display:flex;flex-direction:column;gap:10px}.essen-detail__step{font-size:var(--fs-body);line-height:1.5;color:var(--ink);padding-left:4px}.essen-detail__step::marker{font-weight:800;color:var(--muted)}.essen-detail__empty,.essen-detail__notfound{color:var(--muted);font-size:var(--fs-body);padding:16px}.essen-detail__cta{margin-top:14px;display:flex;flex-direction:column;gap:9px}.essen-detail__tolist{width:100%}.essen-detail__actions{margin-top:22px;display:flex;align-items:center;gap:9px}.essen-detail__delete{margin-left:auto;display:inline-flex;align-items:center;gap:5px;min-height:44px;padding:0 4px;border:none;background:none;color:var(--text-2);font-family:var(--font-body);font-size:var(--fs-meta);font-weight:700;cursor:pointer}@media(min-width:900px){.essen-detail__body{max-width:760px}.essen-create{max-width:480px}}@media(hover:hover)and (min-width:900px){.essen-card{transition:transform var(--dur-quick) var(--ease-out),box-shadow var(--dur-quick) var(--ease-out);cursor:pointer}.essen-card:hover{transform:translateY(-3px);box-shadow:var(--elev-2)}.essen-day__tile,.essen-card__fav{transition:background var(--dur-quick) var(--ease-out),transform var(--dur-quick) var(--ease-out)}.essen-day__tile:hover,.essen-card__fav:hover{background:var(--hover-tint);cursor:pointer}}.essen-urljob{display:flex;align-items:center;gap:9px;width:100%;margin-bottom:10px;padding:10px 14px;border:1px solid var(--divider);border-radius:var(--r-2);background:var(--card);color:var(--ink);font-family:var(--font-body);font-size:var(--fs-meta);font-weight:600;text-align:left}.essen-urljob--ready{cursor:pointer;border-color:var(--ochre)}.essen-urljob--failed{background:var(--over-red-bg);color:var(--over-red-text);border:none}.essen-urljob__text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.essen-urljob__dismiss{border:none;background:none;padding:4px;cursor:pointer;color:inherit;display:grid;place-items:center}.essen-rhythm-link{margin-top:10px;display:flex;align-items:center;gap:8px;color:var(--header-text);text-decoration:none;font-size:var(--fs-meta);font-weight:700;opacity:.85}.essen-rhythm-link__label{flex:1;text-align:left}.essen-day__meal.is-ghost .essen-day__dish-name{color:var(--muted)}.essen-nudge{margin:0 0 10px;padding:12px 14px;display:flex;flex-direction:column;gap:10px}.essen-nudge__text{font-size:var(--fs-body);font-weight:700;line-height:1.35;color:var(--ink)}.essen-nudge__actions{display:flex;gap:8px;flex-wrap:wrap}.essen-picker__rotation{margin:8px 0 0;display:flex;align-items:center;gap:8px;font-size:var(--fs-meta);font-weight:700;color:var(--ochre-text);cursor:pointer}.essen-picker__rotation input{margin:0;accent-color:var(--ochre)}.essen-day__replace{border:none;background:none;padding:4px;cursor:pointer;color:var(--muted)}.todos-input{display:flex;flex-direction:column;align-items:stretch;gap:8px;margin-top:12px}.todos-input__row{display:flex;align-items:center;gap:8px}.todos-input__title{flex:1 1 auto;min-width:0;resize:none;overflow-y:auto;max-height:92px}.todos-input__due-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.todos-input__suggestions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px}.todos-input__suggestion{display:inline-flex;align-items:center;gap:5px}.todos-input__project-chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto}.todos-input__project-chip{display:inline-flex;align-items:center;gap:5px;max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.todos-input__date-chip{position:relative;display:inline-flex;align-items:center;gap:5px}.todos-input__date-native{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.todos-section{margin-top:18px}.todos-section>.section-heading{margin-bottom:9px}.todos-list{list-style:none;margin:0;padding:0}.todos-row{display:flex;align-items:center;gap:10px;padding:10px 14px}.todos-row+.todos-row{border-top:1px solid var(--divider)}.todos-row{--row-leave-height: 72px}.todos-row__text{flex:1 1 auto;min-width:0;min-height:44px;display:flex;flex-direction:column;justify-content:center;gap:1px;border:none;background:none;padding:0;font-family:var(--font-body);color:inherit;text-align:left;cursor:pointer}.todos-row__title{font-size:var(--fs-body);font-weight:600;color:var(--ink)}.todos-row__meta{display:block;font-size:var(--fs-caps);font-weight:700;color:var(--text-2)}.todos-row__note{font-size:var(--fs-caps);color:var(--muted);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.todos-row.is-done .todos-row__title{color:var(--muted);text-decoration:line-through}.todos-edit{padding:12px 14px}.todos-edit__form{display:flex;flex-direction:column;gap:8px}.todos-edit__title{resize:none;overflow-y:auto;max-height:92px;line-height:1.35}.todos-edit .header-chip{background:var(--tile-bg);color:var(--ink);opacity:1}.todos-edit .header-chip.is-active{background:var(--ochre);color:var(--olive-dark)}.todos-edit__actions{display:flex;justify-content:flex-end;align-items:center;gap:8px}.todos-edit__delete{margin-right:auto;display:inline-flex;align-items:center;gap:5px;min-height:44px;padding:0 4px;border:none;background:none;color:var(--text-2);font-family:var(--font-body);font-size:var(--fs-meta);font-weight:700;white-space:nowrap;cursor:pointer}@media(hover:hover)and (min-width:900px){.todos-row{transition:background var(--dur-quick) var(--ease-out)}.todos-row:hover{background:var(--hover-tint);cursor:pointer}}.todos-hub{margin-bottom:4px}.todos-section+.todos-hub,.empty-state+.todos-hub{margin-top:18px}.todos-done-toggle{margin-top:10px;display:flex;justify-content:center}.todos-done-toggle__btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border:none;border-radius:var(--r-pill);background:var(--tile-bg);color:var(--ghost);font-family:var(--font-body);font-size:var(--fs-meta);font-weight:800;cursor:pointer}.todos-project-addrow{display:flex;justify-content:flex-end;margin-bottom:4px}.todos-project-addbtn{display:inline-flex;align-items:center;gap:4px;padding:6px 13px;border:none;border-radius:var(--r-pill);background:var(--tile-bg);color:var(--ghost);font-family:var(--font-body);font-size:var(--fs-micro);font-weight:800;cursor:pointer}.todos-project{margin-bottom:10px;padding-top:4px;padding-bottom:4px}.todos-project.is-done{opacity:.55}.todos-project.is-done .todos-project__name{text-decoration:line-through}.todos-project__head{display:flex;align-items:center;gap:10px;padding:6px 15px}.todos-project__title{flex:1;min-width:0;display:flex;align-items:center;gap:8px;border:none;background:transparent;padding:0;cursor:pointer;font-family:var(--font-body);color:var(--ink);text-align:left}.todos-project__name{font-size:var(--fs-title-s);font-weight:800}.todos-project__count{flex:0 0 auto;font-size:var(--fs-caps);font-weight:700;color:var(--text-2);font-variant-numeric:tabular-nums}.todos-project__collapse{flex:0 0 auto;width:44px;height:44px;margin-right:-10px;display:grid;place-items:center;border:none;background:none;color:var(--muted);cursor:pointer}.todos-project__progress{height:3px;margin:0 15px 6px;border-radius:var(--r-pill);background:var(--tile-bg);overflow:hidden}.todos-project__progress>span{display:block;height:100%;background:var(--ochre);transition:width var(--dur-base) var(--ease-out)}.todos-project__quickadd-open{display:flex;align-items:center;gap:6px;width:100%;min-height:44px;padding:0 15px;border:none;background:none;color:var(--ghost);font-family:var(--font-body);font-size:var(--fs-meta);font-weight:800;cursor:pointer}.todos-project__quickadd{display:flex;align-items:center;gap:8px;padding:4px 15px 8px}.todos-project__quickadd-input{flex:1;min-width:0}.todos-listform{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid var(--divider);border-radius:var(--r-2);margin-bottom:14px;background:var(--card)}.todos-listform__row{display:flex;gap:8px}.todos-listform__input{flex:1 1 auto;min-width:0}.todos-listform__actions{display:flex;justify-content:flex-end;gap:8px}.todos-listform__delete{margin-right:auto}.shopping-row__sync,.todos-row__sync{color:var(--ochre);margin-left:5px;vertical-align:-2px}.first-sync-banner{display:flex;align-items:center;justify-content:center;gap:7px;padding:8px 14px;background:var(--olive);color:var(--header-text);font-size:var(--fs-meta);font-weight:700}.settings__empty-recipes{border-top:1px solid var(--divider)}.settings__empty-recipes-summary{cursor:pointer;list-style:none;align-items:center}.settings__empty-recipes-summary::-webkit-details-marker{display:none}.settings__empty-recipes[open] .settings__empty-recipes-summary .icon{transform:rotate(180deg)}.settings__empty-recipes-list{list-style:none;margin:0;padding:0 0 6px}.settings__empty-recipe{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 16px;text-decoration:none;color:var(--ink);font-size:var(--fs-body);font-weight:600}.settings__empty-recipe:hover{background:var(--divider)}@media(min-width:900px){.bottom-nav{--flap-icon: clamp(34px, 8.8vh - 10px, 104px);--flap-label: clamp(13px, 3vh - 3px, 34px);--flap-pad-top: clamp(6px, 1.2vh, 18px);--flap-pad-bottom: clamp(7px, 1.4vh, 20px);inset-inline:auto;left:0;top:0;bottom:0;width:236px;grid-template-columns:1fr;grid-auto-rows:min-content;align-content:center;align-content:safe center;overflow-y:auto;scrollbar-width:none;gap:clamp(6px,3.5vh - 24px,36px);padding:calc(40px + var(--flap-pad-top) + var(--flap-icon) + var(--flap-label) + var(--flap-pad-bottom)) 18px 20px 0;background:none;border-radius:0;box-shadow:none}.bottom-nav__item{background:var(--cream);border-radius:0 30px 30px 0;padding:var(--flap-pad-top) 12px var(--flap-pad-bottom);box-shadow:var(--elev-2)}.bottom-nav__item .icon{font-size:var(--flap-icon)}.bottom-nav__label{font-size:var(--flap-label)}.bottom-nav__item.is-active{background:var(--ochre);color:var(--olive-dark)}.bottom-nav__item--today{display:flex;position:absolute;top:20px;left:0;right:18px}.bottom-nav__item--today:not(.is-active) .icon{color:var(--ochre)}.app-content{zoom:1.2;padding-left:calc(236px / 1.2);padding-bottom:0;align-items:center}.overlay,.toast-host{zoom:1.2}.app-content>*{width:100%;max-width:1160px;flex:0 0 auto}.app-content>*:has(.sheet){flex:1 1 auto}.app-content .sheet{flex:1 1 auto;border-radius:var(--r-sheet);margin-bottom:14px;padding-bottom:26px}.first-sync-banner{margin-left:236px}.budget-header__block-head{justify-content:flex-start}.budget-cats{flex-wrap:wrap}.budget-cats__name{display:inline}.expense-entry__keypad{display:none}.essen-grid{grid-template-columns:repeat(3,1fr)}.sheet .section-heading{margin-top:30px;margin-bottom:12px}.sheet .section-heading:first-child{margin-top:0}.sheet>[class$=__actions]{margin-top:30px;justify-content:space-between;gap:24px}.sheet>[class$=__actions] .button{flex:0 1 340px}}@media(hover:hover)and (min-width:900px){.bottom-nav__item{transition:transform var(--dur-quick) var(--ease-out),box-shadow var(--dur-quick) var(--ease-out)}.bottom-nav__item:hover{transform:translate(6px);box-shadow:var(--elev-3)}}.packing-section{display:flex;flex-direction:column;gap:10px;padding-bottom:18px}.packing-plainlist{list-style:none;margin:0;padding:0}.packing-row{display:flex;align-items:center;gap:10px;padding:8px 14px}.packing-row+.packing-row{border-top:1px solid var(--divider)}.packing-row__emoji{font-size:17px}.packing-row__text{flex:1 1 auto;min-width:0;font-size:var(--fs-body);font-weight:600;color:var(--ink)}.packing-row.is-packed .packing-row__text{color:var(--muted);text-decoration:line-through}.packing-row.is-pack{min-height:48px;cursor:pointer}.packing-row.is-archived .packing-row__text{color:var(--text-2)}.packing-row__shared{color:var(--muted);font-weight:600;font-size:var(--fs-micro)}.packing-row__delete{flex-shrink:0;border:none;background:none;padding:4px;cursor:pointer;color:var(--muted)}.packing-addform{display:flex;align-items:center;gap:8px}.packing-input{flex:1 1 auto;min-width:0}.packing-input--select{flex:0 1 40%}.packing-template__head{display:flex;align-items:center;gap:10px;width:100%;border:none;background:none;padding:12px 14px;cursor:pointer;text-align:left;font-family:var(--font-body);color:var(--ink)}.packing-template__name{font-size:var(--fs-title-s);font-weight:800}.packing-template__meta{font-size:var(--fs-caps);color:var(--muted);font-weight:600}.packing-template__count{margin-left:auto;font-size:var(--fs-caps);color:var(--muted);font-weight:700;flex-shrink:0}.packing-template__body{display:flex;flex-direction:column;gap:10px;padding:0 14px 14px}.packing-template__delete{align-self:flex-start}.packing-templateform{display:flex;flex-direction:column;gap:8px}.packing-templateform__row{display:flex;gap:8px}.packing-catgroup__heading{margin:8px 0 2px;font-size:var(--fs-caps);font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.packing-perperson{display:flex;align-items:center;gap:8px;font-size:var(--fs-meta);color:var(--muted);font-weight:600}.packing-newlist{align-self:flex-start}.packing-createlist{display:flex;flex-direction:column;gap:8px;background:var(--card);border-radius:var(--r-card);padding:14px;box-shadow:var(--shadow-card-sm)}.packing-peoplepick{display:flex;flex-wrap:wrap;gap:12px}.packing-peoplepick__person{display:flex;align-items:center;gap:6px;font-size:var(--fs-body);font-weight:600}.packing-createlist__actions{display:flex;justify-content:flex-end;gap:8px}.packing-modes{margin-bottom:4px}.packing-person__heading{display:flex;align-items:center;justify-content:space-between;margin:12px 0 0;font-size:var(--fs-body);font-weight:800}.packing-list__head{flex-direction:column;align-items:stretch;gap:6px}.packing-list__title{display:flex;align-items:center;gap:8px}.packing-list__name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.packing-list{overflow:clip}.packing-bar{display:flex;align-items:center;gap:8px}.packing-bar--compact{flex:0 0 110px}.packing-bar__track{flex:1 1 auto;height:4px;border-radius:var(--r-pill);background:var(--track-bg);overflow:hidden}.packing-bar__fill{display:block;height:100%;background:var(--ochre);transition:width var(--dur-base) var(--ease-out)}.packing-bar.is-done .packing-bar__fill{background:var(--support-green)}.packing-bar__count{flex:0 0 auto;font-size:var(--fs-caps);font-weight:700;color:var(--text-2);font-variant-numeric:tabular-nums}.packing-addform--item{flex-wrap:wrap}.packing-addform--item .packing-addform__text{flex:1 1 calc(100% - 56px)}.packing-addform--item .packing-input--select{flex:1 1 0}.packing-archived{margin-top:10px}@media(min-width:900px){.packing-templateform,.packing-createlist{max-width:420px}}@media(hover:hover)and (min-width:900px){.packing-row,.packing-template__head{transition:background var(--dur-quick) var(--ease-out)}.packing-row:hover,.packing-template__head:hover{background:var(--hover-tint);cursor:pointer}}.packing-quickadd{display:flex;align-items:center;gap:6px;margin:8px 0 4px}.packing-quickadd .packing-input--select{flex:0 1 34%}.gift-add{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;border:1.5px dashed var(--border-dashed);border-radius:var(--r-2);padding:12px;background:transparent;color:var(--muted);font-family:var(--font-body);font-size:var(--fs-body);font-weight:700;cursor:pointer;margin-bottom:14px}.gift-group{margin-bottom:16px}.gift-group__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.gift-group__add{width:44px;height:44px;margin-right:-10px;display:grid;place-items:center;border:none;background:none;color:var(--action-text);cursor:pointer}.gift-entry{display:flex;align-items:center;gap:10px;padding:10px 12px}.gift-entry+.gift-entry{border-top:1px solid var(--divider)}.gift-entry.is-given .gift-entry__text{text-decoration:line-through;color:var(--muted)}.gift-entry__photo{width:44px;height:44px;object-fit:cover;border-radius:var(--r-1);flex-shrink:0}.gift-entry__body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.gift-entry__text{padding:0;border:none;background:none;font-family:var(--font-body);font-size:var(--fs-title-s);font-weight:600;color:var(--ink);text-align:left;overflow-wrap:anywhere;cursor:pointer}.gift-entry__meta{display:flex;align-items:center;gap:10px;font-size:var(--fs-micro);color:var(--muted)}.gift-entry__private{display:inline-flex;align-items:center;gap:3px;color:var(--terracotta);font-weight:700}.gift-entry__link{display:inline-flex;align-items:center;gap:3px;color:var(--ochre-text)}.gift-status{flex-shrink:0;display:inline-flex;align-items:center;gap:2px;min-height:32px;border:none;border-radius:var(--r-pill);padding:0 8px 0 12px;font-family:var(--font-body);font-size:var(--fs-micro);font-weight:800;cursor:pointer;background:var(--sand);color:var(--ink)}.gift-status--bought{background:var(--ochre);color:var(--olive-dark)}.gift-status--given{padding:0 12px;background:var(--support-green);color:var(--on-green);cursor:default}.gift-given{margin-top:10px}.gift-form__delete{align-self:flex-start;display:inline-flex;align-items:center;gap:5px;min-height:44px;padding:0 4px;margin-top:-6px;border:none;background:none;color:var(--text-2);font-family:var(--font-body);font-size:var(--fs-meta);font-weight:700;cursor:pointer}.gift-form{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid var(--divider);border-radius:var(--r-2);margin-bottom:14px;background:var(--card)}.gift-form__row{display:flex;align-items:center;gap:8px;font-size:var(--fs-body);font-weight:700}.gift-form__row select{flex:1 1 auto;min-width:0}.gift-form__photo{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;padding:10px 14px;border:1.5px dashed var(--divider);border-radius:var(--r-2);background:var(--card);color:var(--terracotta);font-size:var(--fs-body);font-weight:700;cursor:pointer}.gift-form__photo input{display:none}.gift-form__photocount{color:var(--muted);font-weight:600}.gift-form__remove-photo{align-self:flex-start;border:none;background:transparent;color:var(--terracotta);font-family:var(--font-body);font-size:var(--fs-meta);font-weight:700;cursor:pointer;padding:0}.gift-form__private{display:flex;align-items:center;gap:8px;font-size:var(--fs-body);font-weight:700;color:var(--muted)}.gift-form__private.is-on{color:var(--terracotta)}.gift-form__error{margin:0;font-size:var(--fs-meta);color:var(--over-red-text);font-weight:700}.gift-form__actions{display:flex;justify-content:flex-end;gap:8px}@media(min-width:900px){.gift-group,.gift-given,.gift-add,.gift-form{max-width:760px}}@media(hover:hover)and (min-width:900px){.gift-add,.gift-entry__link{transition:background var(--dur-quick) var(--ease-out),border-color var(--dur-quick) var(--ease-out),color var(--dur-quick) var(--ease-out)}.gift-add:hover{border-color:var(--muted);color:var(--ink)}.gift-entry__link:hover{color:var(--terracotta-light-text)}}.wir-counters{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:6px}.wir-counter{display:flex;flex-direction:column;align-items:center;gap:4px;padding:18px 14px;text-align:center}.wir-counter__emoji{font-size:30px}.wir-counter__days{font-family:var(--font-heading);font-size:var(--fs-glance-m);font-weight:700;color:var(--ink)}.wir-counter__label{font-size:var(--fs-meta);font-weight:600;color:var(--muted)}.wir-add{margin-bottom:12px}.wir-add__row{display:flex;align-items:center;gap:8px}.wir-add__title{flex:1 1 auto;min-width:0}.wir-add__upload{position:relative;flex-shrink:0;display:inline-flex;align-items:center;gap:6px;padding:10px 14px;border-radius:var(--r-1);background:var(--terracotta);color:var(--on-terracotta);font-size:var(--fs-meta);font-weight:700;cursor:pointer}.wir-add__upload.is-disabled{opacity:.4;cursor:default}.wir-add__file{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:inherit}.wir-add__error{margin:8px 2px 0;font-size:var(--fs-meta);font-weight:600;color:var(--over-red-text)}.wir-dance{margin-top:10px}.wir-dance__head{display:flex;align-items:center;gap:8px;padding:10px 14px}.wir-dance__toggle{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:10px;border:none;background:none;padding:0;cursor:pointer;color:var(--muted)}.wir-dance__title{font-size:var(--fs-title-s);font-weight:700;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wir-dance__delete{flex-shrink:0;border:none;background:none;padding:4px;cursor:pointer;color:var(--muted)}.wir-dance__video{display:block;width:100%;max-height:420px;border-radius:0 0 var(--r-card) var(--r-card);background:#000}.diary-kids{display:flex;align-items:flex-start;gap:10px;margin-top:12px}.diary-kid:disabled{cursor:default}.diary-kid{display:flex;flex-direction:column;align-items:center;gap:4px;border:none;background:transparent;cursor:pointer;padding:0;-webkit-user-select:none;user-select:none}.diary-kid:not(.is-active) .diary-kid__emoji{opacity:.6}.diary-kid:not(.is-active) .diary-kid__name{color:var(--text-on-canvas-2)}.diary-kid__emoji{display:grid;place-items:center;width:56px;height:56px;font-size:30px;border-radius:var(--r-3);background:var(--fill-on-canvas)}.diary-kid.is-active .diary-kid__emoji{background:var(--ochre);box-shadow:var(--elev-2)}.diary-kid__name{font-size:var(--fs-caps);font-weight:700;color:var(--header-text)}.diary-kids__meta{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;gap:2px;padding-top:6px}.diary-kids__age{font-size:var(--fs-body);font-weight:800;color:var(--header-text)}.diary-kids__count{font-size:var(--fs-caps);color:var(--text-on-canvas-2);font-weight:600}.diary-filter{display:flex;align-items:center;gap:8px;margin-top:12px}.diary-filter .segment-control{flex:1 1 auto}.diary-filter__year{flex:0 0 auto}.diary-search{width:100%;margin-bottom:12px}.diary-search::placeholder{color:var(--muted)}.diary-write-row{display:flex;align-items:center;gap:10px;margin-top:12px}.diary-write{flex:1;min-width:0;padding-right:0}.diary-write__text{flex:1 1 auto;min-width:0;min-height:42px;display:flex;align-items:center;gap:8px;padding:0;border:none;background:none;font:inherit;color:var(--text-on-canvas-2);text-align:left;cursor:pointer}.diary-write__camera{flex:0 0 auto;width:44px;align-self:stretch;display:grid;place-items:center;border-left:1px solid var(--fill-on-canvas-strong);color:var(--header-text);cursor:pointer}.diary-write__camera input{display:none}.diary-write-row.is-busy{opacity:.45;pointer-events:none}.diary-write__mic{flex:none;box-shadow:var(--elev-2)}.diary-growth{background:var(--card);border-radius:var(--r-3);box-shadow:var(--elev-1);margin-bottom:12px}.diary-growth__toggle{width:100%;min-height:60px;display:flex;align-items:center;gap:12px;padding:10px 14px;border:none;background:none;font-family:var(--font-body);color:var(--ink);text-align:left;cursor:pointer}.diary-growth__text{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:1px}.diary-growth__title{font-size:var(--fs-body);font-weight:800}.diary-growth__meta{font-size:var(--fs-caps);font-weight:700;color:var(--text-2);font-variant-numeric:tabular-nums}.diary-growth__chevron{color:var(--muted)}.diary-growth .growth{padding:0 14px 14px}.diary-entry{position:relative;background:var(--card);border-radius:var(--r-3);box-shadow:var(--elev-1);margin-bottom:12px;overflow:hidden}.diary-entry.is-milestone{box-shadow:inset 3px 0 0 var(--ochre),var(--elev-1)}.diary-entry__photos{display:flex;gap:2px;overflow-x:auto}.diary-entry__photo{flex:1 1 auto;min-width:0;max-height:220px;object-fit:cover;width:100%}.diary-entry__body{padding:12px 14px}.diary-entry__top{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 8px}.diary-entry__open{padding:0;border:none;background:none;text-align:left;cursor:pointer}.diary-entry__open:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit}.diary-entry__open:focus-visible{outline:none}.diary-entry__open:focus-visible:after{outline:2px solid var(--ochre);outline-offset:-2px}.diary-entry:active{background:var(--hover-tint-strong)}.diary-entry__age{font-size:var(--fs-caps);font-weight:700;color:var(--text-2);font-variant-numeric:tabular-nums}.diary-entry__date{font-family:var(--font-serif, Lora, serif);font-size:var(--fs-title-s);font-weight:600;color:var(--ink)}.diary-entry__badge{margin-left:auto;align-self:center}.diary-entry__label{margin:6px 0 0;font-size:var(--fs-title-s);font-weight:800}.diary-entry__text{margin:6px 0 0;font-size:var(--fs-body);line-height:1.5;overflow-wrap:anywhere}.diary-entry__foot{display:flex;align-items:center;gap:6px;margin-top:10px}.diary-entry__author{font-size:var(--fs-caps);color:var(--text-2);font-weight:700}.diary-form{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid var(--divider);border-radius:var(--r-2);margin-bottom:14px;background:var(--card)}.diary-form__title{margin:0;font-size:var(--fs-title-s);font-weight:800}.diary-form__input{min-width:0;flex:1 1 auto}.diary-form__chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none}.diary-form__chips::-webkit-scrollbar{display:none}.diary-form__chips>.chip{flex:0 0 auto;white-space:nowrap}.diary-form__date-chip{position:relative}.diary-form__date-native{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.diary-form__suggest{border:none;border-radius:var(--r-2);padding:10px 12px;background:var(--select-soft);color:var(--ink);font-family:var(--font-body);font-size:var(--fs-meta);font-weight:700;text-align:left;cursor:pointer}.diary-form__text{resize:vertical}.diary-form__photo-row{display:flex;flex-wrap:wrap;gap:8px}.diary-form__photos{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;padding:10px 14px;border:1.5px dashed var(--divider);border-radius:var(--r-2);background:var(--card);color:var(--terracotta);font-size:var(--fs-body);font-weight:700;cursor:pointer}.diary-form__photos input{display:none}.diary-form__photocount{color:var(--muted);font-weight:600}.diary-form__photolist{list-style:none;display:flex;gap:8px;margin:0;padding:0;flex-wrap:wrap}.diary-form__photolist li{position:relative}.diary-form__photolist .diary-entry__photo{width:72px;height:72px;border-radius:var(--r-1)}.diary-form__photolist button{position:absolute;top:-6px;right:-6px;width:22px;height:22px;border:none;border-radius:var(--r-pill);background:var(--terracotta);color:var(--on-terracotta);cursor:pointer;display:grid;place-items:center}.diary-form__error{margin:0;font-size:var(--fs-meta);color:var(--over-red-text);font-weight:700}.diary-form__hint{margin:0;display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:var(--fs-caps);color:var(--muted);font-weight:600}.diary-form__shortcut{display:none}@media(hover:hover)and (pointer:fine){.diary-form__shortcut{display:inline}}.diary-form__actions{display:flex;justify-content:flex-end;gap:8px}.diary-form__actions .diary-form__mic:first-child{margin-right:auto}.diary-form__delete{align-self:flex-start;margin-top:-6px;display:inline-flex;align-items:center;gap:5px;min-height:44px;padding:0 4px;border:none;background:none;color:var(--text-2);font-family:var(--font-body);font-size:var(--fs-meta);font-weight:700;white-space:nowrap;cursor:pointer}.diary-year{margin:18px 0 9px}.diary-memory{background:var(--card);border-radius:var(--r-3);box-shadow:var(--elev-1);margin-bottom:12px;padding:10px 14px 4px}.diary-memory__title{margin:0 0 2px;font-size:var(--fs-caps);font-weight:800;color:var(--text-2)}.diary-memory__row{width:100%;display:flex;flex-direction:column;gap:2px;padding:8px 0;border:none;background:none;font-family:var(--font-body);color:var(--ink);text-align:left;cursor:pointer}.diary-memory__row+.diary-memory__row{border-top:1px solid var(--divider)}.diary-memory__when{font-size:var(--fs-caps);font-weight:700;color:var(--text-2)}.diary-memory__text{font-family:var(--font-serif);font-size:var(--fs-body);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.diary-form__actions .diary-form__mic.is-listening{animation:diary-mic-pulse 1.4s ease-in-out infinite}@keyframes diary-mic-pulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--terracotta) 45%,transparent)}50%{box-shadow:0 0 0 9px color-mix(in srgb,var(--terracotta) 0%,transparent)}}.growth-chart{margin:0;padding:12px 0;border-top:1px solid var(--divider)}.growth-chart__title{display:flex;align-items:center;justify-content:space-between;font-size:var(--fs-micro);font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}.growth-chart__latest{font-size:var(--fs-title-s);font-weight:800;letter-spacing:0;text-transform:none;color:var(--ink)}.growth-chart__svg{display:block;width:100%;height:auto}.growth-chart__line{stroke:var(--domain-diary);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}.growth-chart__dot{fill:var(--domain-diary)}.growth-chart__tick{stroke:var(--divider);stroke-width:1;stroke-dasharray:3 3}.growth-chart__year,.growth-chart__axis{font-family:var(--font-body);font-size:11px;font-weight:700;fill:var(--muted);font-variant-numeric:tabular-nums}.growth-add{display:grid;grid-template-columns:1fr 1fr 40px;gap:8px;padding:12px 0;border-top:1px solid var(--divider)}.growth-add__date{grid-column:1 / -1}.growth-add__value{min-width:0}.growth-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--divider)}.growth-list__row{display:flex;align-items:center;gap:10px;padding:6px 0}.growth-list__row+.growth-list__row{border-top:1px solid var(--divider)}.growth-list__date{font-family:var(--font-serif);font-size:var(--fs-body);color:var(--ink);flex:1 1 auto}.growth-list__values{display:flex;gap:12px;font-size:var(--fs-meta);font-weight:700}.growth-list__row button{width:44px;height:44px;margin-right:-12px;border:none;background:transparent;color:var(--muted);cursor:pointer;display:grid;place-items:center}@media(min-width:900px){.growth-add{max-width:420px}.diary-kids__meta{margin-left:16px}.diary-filter{max-width:520px}.diary-write-row{max-width:720px}.diary-entry,.diary-growth,.diary-memory,.diary-year,.diary-search{max-width:760px}}@media(hover:hover)and (min-width:900px){.diary-kid:not(.is-active){transition:background var(--dur-quick) var(--ease-out)}.diary-kid:not(.is-active):hover .diary-kid__emoji{background:var(--hover-tint-strong);cursor:pointer}}.diary-form__growth{display:flex;gap:8px}.essen-tabs{margin-top:6px}.essen-tabs .segment-control__segment{font-size:var(--fs-section);font-weight:800;padding:12px 10px}.essen-card--empty{opacity:.75}.essen-card--empty .essen-card__photo{outline:1.5px dashed var(--terracotta);outline-offset:-1.5px}.essen-card__empty-flag{position:absolute;top:8px;left:8px;font-size:var(--fs-caps);font-weight:800;background:var(--terracotta);color:var(--on-terracotta);border-radius:var(--r-pill);padding:3px 8px}.fairplay{margin-bottom:14px}.fairplay__toggle{display:flex;align-items:center;gap:8px;width:100%;border:none;background:transparent;padding:12px 14px;font-family:var(--font-body);font-size:var(--fs-body);cursor:pointer;color:var(--ink);text-align:left}.fairplay__label{font-weight:800}.fairplay__sub{flex:1 1 auto;min-width:0;font-size:var(--fs-caps);color:var(--muted);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fairplay__body{padding:0 14px 12px}.fairplay-group__name{margin:10px 0 4px;font-family:var(--font-serif);font-size:var(--fs-body);font-weight:600;color:var(--ink)}.fairplay-row{display:flex;align-items:center;gap:6px;padding:6px 0}.fairplay-row+.fairplay-row{border-top:1px solid var(--divider)}.fairplay-row .fairplay-row__title{flex:1 1 auto;min-width:0;min-height:44px;display:flex;align-items:center;padding:0;font-family:var(--font-body);font-size:var(--fs-body);font-weight:600;color:var(--ink);text-align:left;overflow-wrap:anywhere}.fairplay-owner{flex:0 0 auto;width:44px;height:44px;display:grid;place-items:center;padding:0;border:none;border-radius:var(--r-pill);background:transparent;cursor:pointer}.fairplay-row button,.fairplay-row__edit button{border:none;background:transparent;color:var(--muted);cursor:pointer;padding:4px;display:grid;place-items:center}.fairplay-row__edit{display:flex;flex:1 1 auto;flex-wrap:wrap;align-items:center;gap:6px;padding:6px 0}.fairplay-row__edit input{flex-basis:100%}.fairplay-row__edit .todos-edit__delete{display:inline-flex;padding:0 4px;color:var(--text-2)}.fairplay-row__edit input,.fairplay__add input{flex:1 1 auto;min-width:0}.fairplay__add{display:flex;gap:6px;margin-top:12px}@media(hover:hover)and (min-width:900px){.fairplay-row{transition:background var(--dur-quick) var(--ease-out)}.fairplay-row:hover{background:var(--hover-tint)}.fairplay-row__edit button{transition:background var(--dur-quick) var(--ease-out)}.fairplay-row__edit button:hover{background:var(--hover-tint-strong);cursor:pointer}}.fairplay__catalog-toggle{display:flex;align-items:center;gap:6px;width:100%;border:1.5px dashed var(--divider);border-radius:var(--r-1);background:transparent;padding:9px 12px;margin-top:12px;font-family:var(--font-body);font-size:var(--fs-meta);font-weight:700;color:var(--muted);cursor:pointer;text-align:left}.fairplay-catalog{margin-top:10px}.fairplay-catalog__owner{display:flex;align-items:center;gap:8px;font-size:var(--fs-meta);font-weight:700;margin-bottom:8px}.fairplay-catalog__owner select{border:1px solid var(--divider);border-radius:var(--r-1);padding:5px 24px 5px 8px;font-family:var(--font-body);font-size:var(--fs-meta);background:var(--card) var(--select-chevron) no-repeat right 7px center;color:var(--ink)}.fairplay-catalog__heading{margin:12px 0 6px;font-family:var(--font-serif);font-size:var(--fs-body);font-weight:600;color:var(--muted)}.fairplay-catalog__cards{display:flex;flex-wrap:wrap;gap:6px}.fairplay-card{border:1px solid var(--divider);border-radius:var(--r-pill);padding:6px 11px;font-family:var(--font-body);font-size:var(--fs-micro);font-weight:700;background:var(--card);color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;gap:6px}.fairplay-card:not(:disabled):hover{border-color:var(--terracotta);color:var(--terracotta)}.fairplay-card.is-taken{opacity:.55;cursor:default}.fairplay-card__owner{font-size:var(--fs-caps);font-weight:800;background:var(--ochre);color:var(--olive-dark);border-radius:var(--r-pill);padding:1px 7px}.pantry__intro{margin:0 0 12px;font-size:var(--fs-meta);color:var(--muted);max-width:60ch}.pantry__add{display:flex;gap:8px;margin-bottom:12px}.pantry__input{flex:1 1 auto;min-width:0}.pantry__list{list-style:none;margin:0;padding:0;background:var(--card);border-radius:var(--r-3);box-shadow:var(--elev-1)}.pantry__row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;font-size:var(--fs-body);font-weight:600}.pantry__row+.pantry__row{border-top:1px solid var(--divider)}.pantry__row button{border:none;background:transparent;color:var(--muted);cursor:pointer;padding:4px;display:grid;place-items:center}.files__header-actions{display:flex;gap:8px}.files__search-row{margin-top:12px}.files__search{width:100%}.files__message{margin:0 0 10px;color:var(--muted);font-size:var(--fs-meta);font-weight:600}.files__triage{display:flex;flex-direction:column;gap:12px;padding:4px 14px 14px;background:var(--hover-tint)}.files__view{align-self:flex-start}.files__triage-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.files__origin{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:var(--fs-meta);font-weight:700;overflow-wrap:anywhere}.files__field{display:flex;flex-direction:column;gap:4px}.files__field-label{font-size:var(--fs-caps);font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--muted)}.files__field .field{width:100%}.files__triage-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.files__more{margin:8px 0 0;color:var(--muted);font-size:var(--fs-meta);font-weight:600;text-align:center}.files__search-results{margin-bottom:18px}.files__search-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.files__search-status{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-meta);font-weight:700;color:var(--text-2)}.files__search-status .is-spinning{animation:receipt-scan-spin 1s linear infinite}.files__skeleton{display:flex;flex-direction:column;gap:8px}.files__skeleton>span{height:44px;border-radius:var(--r-2);background:var(--tile-bg)}.files__results{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.files__result{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 14px;border:none;border-radius:var(--r-2);background:var(--card);box-shadow:var(--elev-0);font:inherit;text-align:left}.files__result-name{font-weight:700;font-size:var(--fs-title-s);overflow-wrap:anywhere}.files__result-meta{color:var(--muted);font-size:var(--fs-micro);font-weight:600}.files__activity{display:flex;align-items:center;gap:10px;padding:10px 14px;margin-bottom:12px;font-size:var(--fs-meta);font-weight:700}.files__activity .is-spinning{animation:receipt-scan-spin 1s linear infinite}.files__activity-text{flex:1;min-width:0}.files__unsure{padding:0;margin-bottom:10px;overflow:clip}.files__unsure-row{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;border:none;background:transparent;cursor:pointer;text-align:left;color:var(--ink);font-family:var(--font-body)}.files__unsure-item+.files__unsure-item{border-top:1px solid var(--divider)}.files__unsure-row{min-height:48px}.files__unsure-row.is-selected{background:var(--hover-tint-strong)}.files__unsure-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-body);font-weight:700}.files__unsure-date{flex:none;font-size:var(--fs-micro);font-weight:700;color:var(--muted)}.offers__skeleton{display:flex;flex-direction:column;gap:10px}.offers__skeleton>span{height:84px;border-radius:var(--r-3);background:var(--tile-bg)}.offers__recover{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}@media(min-width:900px){.offers__segment{max-width:560px}}.offers__stale{display:flex;align-items:center;gap:8px;margin:0 0 14px;padding:10px 14px;border-radius:var(--r-list);background:var(--terracotta-light);color:var(--terracotta-light-text);font-size:var(--fs-meta);font-weight:700}.offers__list{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.offer-card{border-radius:var(--r-card);background:var(--card);box-shadow:var(--shadow-card-sm);overflow:hidden}.offer-card--link{display:block;color:inherit;text-decoration:none;cursor:pointer}.offer-card__body{display:flex;flex-direction:column;gap:4px;padding:12px 13px 13px}.offer-card__head{display:flex;align-items:center;justify-content:space-between;gap:8px}.offer-card__retailer{font-size:var(--fs-caps);font-weight:800;letter-spacing:.4px;text-transform:uppercase;color:var(--muted)}.offer-card__retailer--migros{color:var(--brand-migros)}.offer-card__retailer--coop{color:var(--brand-coop)}.offer-card__retailer--aldi{color:var(--brand-aldi)}.offer-card__discount{padding:2px 8px;border-radius:var(--r-pill);background:var(--ochre);color:var(--olive-dark);font-size:var(--fs-caps);font-weight:800}.offer-card__name{font-family:var(--font-body);font-size:var(--fs-body);font-weight:800;line-height:1.25;color:var(--ink)}.offer-card__unit{font-size:var(--fs-caps);font-weight:700;color:var(--muted)}.offer-card__prices{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;margin-top:2px}.offer-card__promo{font-size:var(--fs-section);font-weight:800;color:var(--terracotta);font-variant-numeric:tabular-nums}.offer-card__normal{font-size:var(--fs-micro);font-weight:700;color:var(--muted-light);text-decoration:line-through;font-variant-numeric:tabular-nums}.offer-card__saving{font-size:var(--fs-caps);font-weight:800;color:var(--green-dark)}.offer-card__footer{display:flex;align-items:center;gap:8px;margin-top:4px;font-size:var(--fs-caps);font-weight:700;color:var(--muted)}.offers-watchlist__chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.offers-all__retailers{display:flex;gap:8px;margin-bottom:12px}.offers-all__capped{margin-top:12px;color:var(--muted);font-size:var(--fs-meta);text-align:center}.offers-watchlist__add{display:flex;gap:8px;margin-bottom:12px}.offers-watchlist__input,.offers-compare__input{flex:1;min-width:0}.offers-watchlist__terms{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.offers-watchlist__term{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px 14px;border-radius:var(--r-list);background:var(--card);box-shadow:var(--shadow-card-sm);font-size:var(--fs-body);font-weight:700;color:var(--ink)}.offers-watchlist__remove,.offers-compare__group+.offers-compare__group{background:none}.offers-watchlist__remove{display:inline-flex;padding:4px;border:none;color:var(--muted);cursor:pointer}.offers-compare__search{display:flex;align-items:center;gap:8px;margin-bottom:16px}.offers-compare__group{margin-bottom:18px}.today__date{margin:4px 0 0;color:var(--header-text);opacity:.85;font-family:var(--font-serif);font-size:var(--fs-section);font-weight:600}.today__card{position:relative;margin-bottom:12px}.today__card:before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:0 3px 3px 0;background:var(--domain-accent, transparent)}.today__block{position:relative;display:flex;flex-direction:column;gap:8px;padding:14px 16px;text-decoration:none;color:var(--ink)}.today__block-head{display:flex;align-items:center;justify-content:space-between;gap:8px;color:inherit;text-decoration:none}.today__block-title{display:inline-flex;align-items:center;gap:7px;font-size:var(--fs-title-s);font-weight:800}.today__block-icon{color:var(--domain-accent, var(--text-2))}.today__block-sub{font-size:var(--fs-meta);font-weight:600;color:var(--muted);text-decoration:none}.today__count{min-width:24px}.today__budget-percent{font-size:var(--fs-meta);font-weight:800;color:var(--ochre-text)}.today__budget-bar{position:relative;height:6px;border-radius:var(--r-pill);background:var(--tile-bg, var(--divider))}.today__budget-tick{position:absolute;top:-3px;bottom:-3px;width:2px;margin-left:-1px;border-radius:1px;background:var(--ink);opacity:.55}.today__budget-fill{height:100%;border-radius:var(--r-pill);background:var(--ochre)}.today__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.today__list-item{display:flex;align-items:center;gap:8px;font-size:var(--fs-body);font-weight:700}.today__list-more,.today__list-more a{font-size:var(--fs-micro);font-weight:700;color:var(--muted);text-decoration:none}.today__todo{--row-leave-height: 48px;min-height:36px}.today__todo-title{flex:1;min-width:0}.today__meal{display:inline-flex;align-items:center;gap:8px;min-height:32px;color:var(--ink);text-decoration:none}.today__meal-emoji{font-size:18px;line-height:1}.today__offer-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.today__offer-discount{padding:1px 7px;border-radius:var(--r-pill);background:var(--ochre);color:var(--olive-dark);font-size:var(--fs-caps);font-weight:800}.today__offer-price{font-size:var(--fs-meta);font-weight:800;color:var(--ochre-text);font-variant-numeric:tabular-nums}.emoji-picker{position:relative;flex:0 0 auto}.emoji-picker__value{width:44px;height:44px;border:1px solid var(--divider);border-radius:var(--r-1);background:var(--card);font-size:24px;cursor:pointer;display:grid;place-items:center}.emoji-picker__panel{position:absolute;z-index:30;top:calc(100% + 6px);left:0;width:min(300px,82vw);background:var(--card);border:1px solid var(--divider);border-radius:var(--r-2);box-shadow:var(--elev-3);padding:10px}.emoji-picker__search{width:100%;margin-bottom:8px}.emoji-picker__heading{font-size:var(--fs-caps);font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:2px 0 4px}.emoji-picker__grid{display:grid;grid-template-columns:repeat(6,1fr);gap:2px}.emoji-picker__grid--all{max-height:200px;overflow-y:auto;margin-top:4px}.emoji-picker__grid button{border:none;background:transparent;font-size:22px;padding:6px 0;cursor:pointer;border-radius:var(--r-1)}.emoji-picker__grid button:hover,.emoji-picker__grid button:focus-visible{background:var(--select-soft)}.emoji-picker__none{grid-column:1 / -1;margin:6px 0;font-size:var(--fs-meta);color:var(--muted);text-align:center}.radial-nav{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-nav);pointer-events:none}.radial-nav__scrim{position:absolute;top:0;right:0;bottom:0;left:0;border:none;padding:0;background:radial-gradient(130% 95% at 86% 93%,color-mix(in srgb,var(--olive-dark) 60%,transparent),color-mix(in srgb,var(--olive-dark) 26%,transparent) 55%,color-mix(in srgb,var(--olive-dark) 6%,transparent));opacity:0;pointer-events:none;transition:opacity .2s ease}.radial-nav.is-open .radial-nav__scrim{opacity:1;pointer-events:auto;cursor:pointer}.radial-nav__chip{position:absolute;display:grid;place-items:center;border:none;border-radius:50%;background:var(--olive);color:var(--header-text);box-shadow:var(--elev-2);cursor:pointer;pointer-events:auto}.radial-nav__chip[class*=domain-]{box-shadow:0 0 0 2px var(--domain-accent-canvas),var(--elev-2)}.radial-nav__chip.is-active{background:var(--ochre);color:var(--olive-dark)}.radial-nav__chip:active,.radial-nav__anchor:active{filter:brightness(1.12)}.radial-nav__chip--peek{width:56px;height:56px;touch-action:pan-y;transform:translate(0);transition:transform .26s var(--ease-emph),opacity .15s ease}.radial-nav__chip--swipe{touch-action:none}.radial-nav.is-open .radial-nav__chip--peek{transform:translate(var(--open-x),var(--open-y))}.radial-nav.is-more .radial-nav__chip--peek{transform:translate(var(--far-x),var(--far-y))}.radial-nav.is-docked .radial-nav__chip--peek{transform:translate(var(--dock-x),var(--dock-y)) scale(.2);opacity:0;pointer-events:none}.radial-nav__ring{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.radial-nav__ring--middle{transform-origin:calc(100% - 42px) calc(100% - 42px);transform:scale(.34);opacity:0;transition:transform .24s var(--ease-emph),opacity .16s ease}.radial-nav.is-open .radial-nav__ring--middle{transform:scale(1);opacity:1}.radial-nav__chip--middle{width:52px;height:52px;background:color-mix(in srgb,var(--olive) 84%,var(--header-text));pointer-events:none;transform:translate(0);transition:transform .26s var(--ease-emph)}.radial-nav.is-open .radial-nav__chip--middle{pointer-events:auto}.radial-nav.is-more .radial-nav__chip--middle{transform:translate(var(--far-x),var(--far-y))}.radial-nav__ring--fan{transform-origin:calc(100% - 42px) calc(100% - 42px);transform:scale(.34);opacity:0;transition:transform .24s var(--ease-emph),opacity .16s ease}.radial-nav.is-more .radial-nav__ring--fan{transform:scale(1);opacity:1}.radial-nav__chip--fan{width:48px;height:48px;background:color-mix(in srgb,var(--olive) 70%,var(--header-text));pointer-events:none}.radial-nav.is-more .radial-nav__chip--fan{pointer-events:auto}.radial-nav__anchor{position:absolute;right:14px;bottom:calc(14px + env(safe-area-inset-bottom));width:56px;height:56px;display:grid;place-items:center;border:none;border-radius:50%;background:var(--olive);color:var(--header-text);box-shadow:var(--elev-3);cursor:pointer;pointer-events:auto;touch-action:none;transition:background .2s ease,color .2s ease,box-shadow .2s ease}.radial-nav__anchor.is-syncing{box-shadow:var(--elev-3),0 0 0 3px var(--ochre);animation:radial-sync-pulse 1.2s ease-in-out infinite}.radial-nav__anchor.is-sync-error{box-shadow:var(--elev-3),0 0 0 3px var(--over-red)}@keyframes radial-sync-pulse{50%{box-shadow:var(--elev-3),0 0 0 3px color-mix(in srgb,var(--ochre) 35%,transparent)}}.radial-nav.is-open .radial-nav__anchor{background:var(--cream);color:var(--ink)}.radial-nav__anchor-icon{display:block;transform:rotate(0);transition:transform .24s var(--ease-emph)}.radial-nav.is-open .radial-nav__anchor-icon{transform:rotate(90deg)}@media(max-width:899.98px){.bottom-nav{display:none}}@media(min-width:900px){.radial-nav{display:none}}@media(prefers-reduced-motion:reduce){.radial-nav__chip--peek,.radial-nav__chip--middle,.radial-nav__ring--middle,.radial-nav__ring--fan,.radial-nav__anchor-icon,.radial-nav__scrim,.radial-nav__anchor{transition:none}}.funds__intro{margin:10px 0 0;font-size:var(--fs-micro);font-weight:600;line-height:1.4;opacity:.7}.funds__card{margin-bottom:10px}.funds__row{width:100%;display:flex;align-items:center;gap:10px;padding:12px 14px;border:none;background:none;font-family:var(--font-body);text-align:left;cursor:pointer}.funds__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.funds__name{font-size:var(--fs-body);font-weight:800;color:var(--ink)}.funds__sub{font-size:var(--fs-caps);font-weight:600;color:var(--muted)}.funds__balance{font-size:var(--fs-body);font-weight:800;color:var(--ink);font-variant-numeric:tabular-nums}.funds__editor{display:flex;flex-direction:column;gap:10px;padding:0 14px 14px}.funds__field{display:flex;flex-direction:column;gap:4px}.funds__field-label{font-size:var(--fs-caps);font-weight:700;color:var(--muted)}.funds__editor-actions{display:flex;gap:9px}.funds__editor-actions .button{flex:1}.funds__add{margin-top:4px;display:flex}.funds__add .button{flex:1}.funds__rowwrap{display:flex;align-items:center}.funds__rowwrap .funds__row{flex:1;min-width:0}.funds__edit{flex:none;border:none;background:none;padding:10px 14px;cursor:pointer;color:var(--muted)}.fund-statement__block{display:flex;flex-direction:column;margin-bottom:6px}.fund-statement__amount{font-size:var(--fs-body);font-weight:800}.fund-statement__total{display:flex;justify-content:space-between;padding:10px 14px;border-top:2px solid var(--divider);font-size:var(--fs-meta);font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums}.fund-statement__balance{display:flex;justify-content:space-between;align-items:center;margin-top:8px;padding:14px;border-radius:var(--r-list);background:var(--card);box-shadow:var(--shadow-card-sm);font-size:var(--fs-body);font-weight:700;font-variant-numeric:tabular-nums}.fund-statement__actions{display:flex;gap:9px;margin-top:12px}.fund-statement__actions .button{flex:1}.rhythm__intro{margin:10px 0 0;font-size:var(--fs-micro);font-weight:600;line-height:1.4;color:var(--header-text);opacity:.7}.rhythm__anchor{margin-top:12px;display:flex;align-items:center;gap:8px;color:var(--header-text);font-size:var(--fs-meta);font-weight:700}.rhythm__anchor-label{flex:1}.rhythm__anchor .header-chip{gap:4px;font-size:var(--fs-caps)}.rhythm__hint{margin:0 0 12px;font-size:var(--fs-meta);font-weight:600;line-height:1.4;color:var(--muted)}.rhythm-week+.rhythm-week{margin-top:18px}.rhythm-week__heading{display:flex;align-items:center;gap:10px}.rhythm-slot{display:flex;align-items:center;gap:12px;padding:11px 14px;color:var(--muted-light)}.rhythm-slot+.rhythm-slot,.rhythm-slot+.essen-picker{border-top:1px solid var(--divider)}.rhythm-slot.is-today .rhythm-slot__day{color:var(--olive-dark);background:var(--ochre);border-radius:var(--r-pill);padding:2px 0;text-align:center}.rhythm-slot.is-highlighted{background:color-mix(in srgb,var(--ochre) 14%,transparent)}.rhythm-slot__day{flex-shrink:0;width:34px;font-size:var(--fs-caps);font-weight:800;letter-spacing:1px;color:var(--muted)}.rhythm-slot__recipe{flex:1;min-width:0;text-align:left;border:none;background:transparent;padding:0;font-family:var(--font-body);font-size:var(--fs-title-s);font-weight:700;font-style:italic;color:var(--ink);cursor:pointer}.rhythm-slot__recipe.is-free{font-style:normal;font-size:var(--fs-body);color:var(--muted-light)}.vouchers__card{margin-bottom:10px}.vouchers__add{display:flex;gap:9px;margin-top:4px}.vouchers__add .button{flex:1}.vouchers__summary{margin:8px 0 0;font-size:var(--fs-meta);font-weight:700;color:var(--text-on-canvas-2);font-variant-numeric:tabular-nums}.vouchers__expiry.is-soon{color:var(--ochre-text);font-weight:800}.vouchers__expiry.is-expired{color:var(--over-red-text);font-weight:800}.vouchers__discount{color:var(--ochre-text)}.vouchers__code{display:inline-flex;align-items:center;min-height:40px;margin:-4px 14px 12px;padding:0 12px;border:none;border-radius:var(--r-1);background:var(--tile-bg);color:var(--ink);font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:var(--fs-body);font-weight:700;letter-spacing:.04em;cursor:pointer}.voucher-cashier__body{display:flex;flex-direction:column;align-items:stretch;gap:10px;padding:18px 16px 20px;text-align:center}.voucher-cashier__store{margin:0;font-size:var(--fs-caps);font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--text-2)}.voucher-cashier__title{margin:0;font-size:var(--fs-title-m);font-weight:800;color:var(--ink)}.voucher-cashier__code{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 12px;border:1.5px dashed var(--border-dashed);border-radius:var(--r-2);background:var(--tile-bg);color:var(--ink);font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:var(--fs-glance-m);font-weight:700;letter-spacing:.06em;overflow-wrap:anywhere;cursor:pointer}.voucher-cashier__code-hint{font-family:var(--font-body);font-size:var(--fs-caps);font-weight:700;letter-spacing:0;color:var(--text-2)}.voucher-cashier__value{margin:4px 0 0;display:flex;flex-direction:column;align-items:center;font-size:var(--fs-glance-m);font-weight:800;color:var(--ink);font-variant-numeric:tabular-nums}.voucher-cashier__value-label{font-size:var(--fs-caps);font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--text-2)}.voucher-cashier__expiry{margin:0;font-size:var(--fs-meta);font-weight:700;color:var(--text-2)}.voucher-cashier__redeem{display:flex;flex-direction:column;gap:8px;margin-top:6px;text-align:left}.voucher-cashier__preview{min-height:1.4em;margin:0;font-size:var(--fs-meta);font-weight:700;color:var(--text-2);font-variant-numeric:tabular-nums}.vouchers__redeemed-toggle{display:flex;align-items:center;gap:5px;margin-top:14px;border:none;background:none;padding:4px 0;color:var(--muted);font-family:var(--font-body);font-size:var(--fs-meta);font-weight:700;cursor:pointer}.vouchers__delete{border:none;background:none;padding:8px;cursor:pointer;color:var(--muted)}.check-circle{flex-shrink:0;display:grid;place-items:center;padding:10px;margin:-10px;border:none;background:none;color:var(--on-green);cursor:pointer}.check-circle__ring{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;border:2px solid var(--control-ring);background:transparent;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.check-circle.is-checked .check-circle__ring{background:var(--support-green);border-color:var(--support-green)}.check-circle:active .check-circle__ring{transform:scale(.92)}.check-circle--lg .check-circle__ring{width:28px;height:28px}@media(hover:hover)and (min-width:900px){.check-circle:hover .check-circle__ring{border-color:var(--support-green)}.check-circle.is-checked:hover .check-circle__ring{filter:brightness(1.08)}}.car-stats__tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.car-stats__tile{display:flex;flex-direction:column;gap:2px;padding:12px 10px;border-radius:var(--r-list);background:var(--card);box-shadow:var(--shadow-card-sm);text-align:center}.car-stats__tile-value{font-size:var(--fs-section);font-weight:800;font-variant-numeric:tabular-nums}.car-stats__tile-label{font-size:var(--fs-caps);font-weight:700;color:var(--muted)}.car-stats__chart-card{padding:12px}.car-stats__svg{width:100%;height:auto;display:block}.car-stats__line{fill:none;stroke:var(--ochre);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.car-stats__dot{fill:var(--card);stroke:var(--ochre);stroke-width:.7}.car-stats__bar{fill:var(--ochre)}.car-stats__avg{stroke:var(--muted);stroke-width:.6;stroke-dasharray:2 2}.car-stats__axis{font-size:3.6px;font-weight:600;fill:var(--muted);font-family:var(--font-body);paint-order:stroke;stroke:var(--card);stroke-width:.8px}.car-stats__axis--avg{font-weight:800}.car-stats .section-heading{margin:18px 0 8px}@media(min-width:900px){.car-stats__chart-card{max-width:560px}}
