@font-face{font-family:Figtree;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/figtree/v9/_Xms-HUzqDCFdgfMm4q9DbZs.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/figtree/v9/_Xms-HUzqDCFdgfMm4S9DQ.woff2) format("woff2");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:Figtree;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/figtree/v9/_Xms-HUzqDCFdgfMm4q9DbZs.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/figtree/v9/_Xms-HUzqDCFdgfMm4S9DQ.woff2) format("woff2");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:Figtree;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/figtree/v9/_Xms-HUzqDCFdgfMm4q9DbZs.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/figtree/v9/_Xms-HUzqDCFdgfMm4S9DQ.woff2) format("woff2");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:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggqxSuXd.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggOxSuXd.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggSxSuXd.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggixSuXd.woff2) format("woff2");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:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggmxSuXd.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggexSg.woff2) format("woff2");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:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggqxSuXd.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggOxSuXd.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggSxSuXd.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggixSuXd.woff2) format("woff2");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:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggmxSuXd.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggexSg.woff2) format("woff2");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:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggqxSuXd.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggOxSuXd.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggSxSuXd.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggixSuXd.woff2) format("woff2");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:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggmxSuXd.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggexSg.woff2) format("woff2");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:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggqxSuXd.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggOxSuXd.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggSxSuXd.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggixSuXd.woff2) format("woff2");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:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggmxSuXd.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggexSg.woff2) format("woff2");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:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggqxSuXd.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggOxSuXd.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggSxSuXd.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggixSuXd.woff2) format("woff2");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:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggmxSuXd.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggexSg.woff2) format("woff2");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}:root{--green-950: #00220f;--green-900: #01301b;--green-800: #01391a;--green-700: #0b4522;--green-600: #1f5c34;--sage: #d3e1ca;--sage-soft: #ecf2e6;--cream: #f7efda;--cream-soft: #fbf6ea;--navy: #19485f;--pink: #f2b8c8;--white: #fff;--page: #f5f3ec;--surface: #fff;--surface-raised: #fff;--surface-sunken: #f9f7f1;--surface-hover: #f6f4ee;--ink: #0e1a12;--body: #34413a;--muted: #69756d;--border: rgba(14, 26, 18, .08);--border-strong: rgba(14, 26, 18, .16);--accent: var(--green-800);--accent-ink: #fff;--accent-soft: var(--sage-soft);--accent-soft-ink: var(--green-800);--focus: rgba(31, 92, 52, .28);--positive: #1e6b3f;--positive-soft: #e3f0e5;--negative: #b03558;--negative-soft: #fbe9ee;--info: #19485f;--info-soft: #e3edf2;--warning: #8a5a0e;--warning-soft: #fdf2d9;--warning-border: rgba(138, 90, 14, .22);--sidebar: #01341a;--sidebar-ink: #e3ede5;--sidebar-muted: rgba(227, 237, 229, .52);--band: linear-gradient(135deg, #024223 0%, #01341a 52%, #012813 100%);--band-glow: radial-gradient(120% 140% at 100% 0%, rgba(211, 225, 202, .2) 0%, transparent 48%);--band-ink: var(--cream);--band-muted: rgba(247, 239, 218, .66);--band-line: rgba(247, 239, 218, .12);--band-tile: rgba(255, 255, 255, .06);--wallet-usd: linear-gradient(140deg, #22597a 0%, #19485f 55%, #10354a 100%);--chart-income: #2b7449;--chart-expense: #e2708f;--chart-accent: #2f7db8;--chart-ink: #69756d;--chart-grid: rgba(14, 26, 18, .08);--chart-tooltip: #01391a;--chart-tooltip-ink: #fff;--shadow-sm: 0 1px 2px rgba(14, 26, 18, .04), 0 1px 3px rgba(14, 26, 18, .04);--shadow: 0 1px 2px rgba(14, 26, 18, .04), 0 8px 24px rgba(14, 26, 18, .05);--shadow-band: 0 18px 40px rgba(1, 52, 26, .18);--radius-sm: 10px;--radius-md: 14px;--radius-lg: 20px;--radius-pill: 999px;--ease: cubic-bezier(.4, 0, .2, 1);color-scheme:light}:root[data-theme=dark]{--page: #0a110d;--surface: #111a15;--surface-raised: #16211b;--surface-sunken: #0d1511;--surface-hover: #16211b;--ink: #eef3ec;--body: #c3cec6;--muted: #8c9a90;--border: rgba(225, 235, 226, .08);--border-strong: rgba(225, 235, 226, .16);--cream-soft: #18241d;--accent: #cfe3c4;--accent-ink: #01301b;--accent-soft: rgba(211, 225, 202, .1);--accent-soft-ink: #cfe3c4;--focus: rgba(207, 227, 196, .3);--positive: #7fcb99;--positive-soft: rgba(127, 203, 153, .12);--negative: #f19bb3;--negative-soft: rgba(241, 155, 179, .12);--info: #9cc6e0;--info-soft: rgba(156, 198, 224, .12);--warning: #e9bd6c;--warning-soft: rgba(233, 189, 108, .1);--warning-border: rgba(233, 189, 108, .24);--sidebar: #0c1912;--band: linear-gradient(135deg, #0f4527 0%, #0b3520 55%, #082a19 100%);--band-glow: radial-gradient(120% 140% at 100% 0%, rgba(211, 225, 202, .14) 0%, transparent 48%);--chart-income: #2f8754;--chart-expense: #da6a8d;--chart-accent: #3a86c4;--chart-ink: #8c9a90;--chart-grid: rgba(225, 235, 226, .08);--chart-tooltip: #eef3ec;--chart-tooltip-ink: #0a110d;--shadow-sm: none;--shadow: none;--shadow-band: none;color-scheme:dark}*{box-sizing:border-box}html{min-height:100%;background:var(--page)}body{margin:0;min-height:100%;font-family:Manrope,system-ui,sans-serif;color:var(--body);background:var(--page);font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3,strong{color:var(--ink)}h1,h2{font-family:Figtree,system-ui,sans-serif}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:2px}::selection{background:color-mix(in srgb,var(--sage) 70%,transparent);color:var(--ink)}.app-shell{min-height:100vh;display:grid;grid-template:68px 1fr/256px 1fr}.sidebar{grid-row:1/3;background:var(--sidebar);color:var(--sidebar-ink);padding:0 14px 18px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;z-index:30;overflow:hidden}.sidebar:after{content:"";position:absolute;width:300px;height:300px;left:-150px;bottom:-150px;border:56px solid rgba(255,255,255,.035);border-radius:50%;pointer-events:none}.brand{min-height:68px;display:flex;align-items:center;gap:12px;text-decoration:none;padding:0 10px;color:#fff}.brand-logo{display:block;height:28px;width:auto}.brand small{color:var(--sidebar-muted);display:block;padding-left:12px;border-left:1px solid rgba(255,255,255,.18);font-size:12px;font-weight:600;line-height:22px}.sidebar nav{margin-top:14px;display:grid;gap:2px;position:relative;z-index:1}.sidebar nav p{color:var(--sidebar-muted);margin:18px 12px 8px;font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.sidebar nav p:first-child{margin-top:4px}.sidebar nav a{display:flex;align-items:center;gap:12px;min-height:42px;padding:0 12px;border-radius:12px;color:var(--sidebar-ink);text-decoration:none;font-weight:600;transition:background .15s var(--ease),color .15s var(--ease)}.sidebar nav a app-icon{font-size:18px;opacity:.72;transition:opacity .15s var(--ease)}.sidebar nav a:hover{background:#ffffff12;color:#fff}.sidebar nav a:hover app-icon{opacity:1}.sidebar nav a.active{background:var(--cream);color:var(--green-900);box-shadow:0 6px 16px #00000029}.sidebar nav a.active app-icon{opacity:1;color:var(--green-700)}.sidebar-note{margin-top:auto;position:relative;z-index:1;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:12px 14px;color:var(--sidebar-muted);font-size:11px;display:flex;gap:10px;align-items:flex-start;line-height:1.4}.sidebar-note strong{display:block;color:var(--sidebar-ink);font-size:12px;margin-bottom:1px}.status-dot{width:7px;height:7px;margin-top:5px;flex:0 0 auto;border-radius:50%;background:#a6dd8d;box-shadow:0 0 0 4px #a6dd8d24}.topbar{grid-column:2;min-width:0;height:68px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 32px;border-bottom:1px solid var(--border);background:var(--page);position:sticky;top:0;z-index:20}.secure-label{color:var(--muted);font-size:12px;font-weight:600;display:inline-flex;align-items:center;gap:7px;padding:6px 12px 6px 10px;border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border)}.secure-label app-icon{font-size:15px;color:var(--positive)}.topbar-actions{display:flex;align-items:center;gap:10px;margin-left:auto}.icon-button{display:grid;place-items:center;border:1px solid var(--border);background:var(--surface);color:var(--body);width:38px;height:38px;border-radius:12px;cursor:pointer;font-size:18px;transition:background .15s var(--ease),border-color .15s var(--ease)}.icon-button:hover{border-color:var(--border-strong);background:var(--surface-hover)}.mobile-menu{display:none}.user-button{border:1px solid var(--border);background:var(--surface);display:flex;align-items:center;gap:10px;cursor:pointer;padding:4px 12px 4px 4px;border-radius:var(--radius-pill);color:var(--muted);text-align:left;transition:border-color .15s var(--ease)}.user-button:hover{border-color:var(--border-strong)}.user-button>app-icon{font-size:16px}.avatar{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--sage);color:var(--green-900);font:700 11px Figtree}.user-copy strong,.user-copy small{display:block}.user-copy strong{font-size:12px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-copy small{color:var(--muted);font-size:11px;margin-top:1px}.content{grid-column:2;min-width:0;padding:32px;max-width:1440px;width:100%}.scrim{display:none}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin:0 0 28px}.page-heading h1{font-size:clamp(28px,2.6vw,38px);line-height:1.05;letter-spacing:-.035em;margin:0 0 8px;font-weight:800}.page-heading p{color:var(--muted);margin:0}.context-line{display:inline-flex;font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-soft-ink)!important;background:var(--accent-soft);border-radius:var(--radius-pill);padding:5px 10px;margin-bottom:12px!important}.heading-actions{display:flex;align-items:center;gap:12px}.button{border:1px solid transparent;min-height:40px;border-radius:var(--radius-pill);padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;font-weight:700;font-size:13.5px;cursor:pointer;white-space:nowrap;transition:filter .15s var(--ease),background .15s var(--ease),border-color .15s var(--ease)}.button:hover{filter:brightness(.94)}.button:disabled{opacity:.5;cursor:not-allowed;filter:none}.button.primary{background:var(--accent);color:var(--accent-ink)}.button.secondary{background:var(--accent-soft);color:var(--accent-soft-ink)}.button.ghost{background:transparent;color:var(--body)}.button.ghost:hover{background:var(--surface-hover);filter:none}.button.wide{width:100%}.segmented{display:inline-flex;padding:3px;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-sunken)}.segmented button{border:0;background:transparent;color:var(--muted);min-width:58px;height:32px;border-radius:var(--radius-pill);cursor:pointer;font-weight:700;font-size:12.5px;transition:background .15s var(--ease),color .15s var(--ease)}.segmented button:hover{color:var(--ink)}.segmented button.active{background:var(--accent);color:var(--accent-ink);box-shadow:0 1px 2px #0e1a1214,0 2px 8px #0e1a120f}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);min-width:0}.panel>header,.preview-panel>header{padding:22px 24px 0;display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.panel>header h2,.preview-panel>header h2{font-size:16px;font-weight:700;letter-spacing:-.01em;margin:0 0 4px}.panel>header p,.preview-panel>header p{color:var(--muted);font-size:12.5px;margin:0}.panel>header>span{color:var(--muted);font-size:11.5px;font-weight:600;white-space:nowrap;background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--radius-pill);padding:4px 10px}.panel>header a{color:var(--accent-soft-ink);background:var(--accent-soft);border-radius:var(--radius-pill);padding:5px 12px;font-weight:700;font-size:12px;text-decoration:none}.cash-band{position:relative;background:var(--band-glow),var(--band);color:var(--band-ink);border-radius:24px;display:grid;grid-template-columns:minmax(max-content,1fr) minmax(0,1.9fr);gap:12px;padding:12px;min-height:184px;overflow:hidden;box-shadow:var(--shadow-band);margin-bottom:16px;isolation:isolate}.cash-band:after{content:"";position:absolute;z-index:-1;width:380px;height:380px;left:18%;bottom:-260px;border:64px solid rgba(255,255,255,.04);border-radius:50%}.cash-total{padding:18px 20px;display:flex;flex-direction:column;justify-content:center}.cash-total>span{color:var(--band-muted);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.cash-total strong{color:var(--band-ink);font:800 clamp(32px,3.4vw,48px)/1 "Figtree";letter-spacing:-.04em;margin:12px 0 10px;font-variant-numeric:tabular-nums}.cash-total small{color:var(--band-muted);font-size:11.5px}.wallet-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(170px,1fr);gap:10px;overflow-x:auto}.wallet-strip article{padding:18px;border-radius:16px;background:var(--band-tile);border:1px solid var(--band-line);display:flex;flex-direction:column;justify-content:flex-end;min-height:132px}.wallet-strip article span{color:var(--band-muted);font-size:12px;font-weight:600}.wallet-strip article strong{color:#fff;font:700 22px Figtree;letter-spacing:-.02em;margin:6px 0 4px;font-variant-numeric:tabular-nums}.wallet-strip article small{color:var(--band-muted);font-size:11px}.wallet-strip .empty-wallet a{color:var(--green-900);background:var(--cream);border-radius:var(--radius-pill);padding:7px 14px;margin-top:12px;font-weight:700;text-decoration:none;align-self:flex-start}.metric-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px}.metric-row.capital-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.metric-row article{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:18px;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:12px;align-items:center}.metric-row span:not(.metric-icon){color:var(--muted);font-size:12px;font-weight:600;display:block}.metric-row strong{grid-column:1/-1;font:700 22px Figtree;letter-spacing:-.02em;display:block;margin-top:14px;font-variant-numeric:tabular-nums}.metric-row small{grid-column:1/-1;color:var(--muted);font-size:12px;margin-top:4px;font-variant-numeric:tabular-nums}.metric-icon{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;font-size:17px;background:var(--accent-soft);color:var(--accent-soft-ink)}.metric-icon.income{background:var(--positive-soft);color:var(--positive)}.metric-icon.expense{background:var(--negative-soft);color:var(--negative)}.metric-icon.info{background:var(--info-soft);color:var(--info)}.positive{color:var(--positive)!important}.negative{color:var(--negative)!important}.neutral{color:var(--ink)!important}.alert-stack{display:grid;gap:8px;margin-bottom:16px}.alert-stack a{text-decoration:none;display:flex;gap:12px;align-items:center;border:1px solid var(--warning-border);background:var(--warning-soft);color:var(--warning);border-radius:var(--radius-md);padding:12px 14px;transition:border-color .15s var(--ease)}.alert-stack a:hover{border-color:var(--warning)}.alert-stack a>app-icon{font-size:20px}.alert-stack strong,.alert-stack small{display:block;color:inherit}.alert-stack small{margin-top:2px;opacity:.85}.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.plotly-host{min-height:310px;width:100%;padding:0 8px 8px}.form-panel{padding-bottom:24px;margin-bottom:18px}.form-panel>.button.wide{width:calc(100% - 48px);margin:0 24px}.form-panel.compact{max-width:880px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:20px 24px}.form-grid.single{grid-template-columns:1fr}.form-grid .span-2{grid-column:1/-1}label{color:var(--body);font-size:12px;font-weight:600;display:grid;gap:7px}label small{color:var(--muted);font-weight:500}input,select,textarea{width:100%;border:1px solid var(--border-strong);color:var(--ink);background:var(--surface-raised);border-radius:12px;padding:10px 12px;min-height:42px;transition:border-color .15s var(--ease),box-shadow .15s var(--ease)}input:hover,select:hover,textarea:hover{border-color:color-mix(in srgb,var(--ink) 30%,transparent)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px var(--focus)}input::placeholder,textarea::placeholder{color:color-mix(in srgb,var(--muted) 75%,transparent)}select{appearance:none;padding-right:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2369756d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;cursor:pointer}input[type=file]{padding:8px}input[type=file]::file-selector-button{border:0;border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent-soft-ink);font-weight:700;padding:6px 12px;margin-right:10px;cursor:pointer}textarea{resize:vertical}.inline-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-actions{display:flex;justify-content:flex-end;gap:10px;padding:0 24px}.form-hint{color:var(--muted);margin:0 24px 12px;font-size:12.5px}.form-error{color:var(--negative);background:var(--negative-soft);border-radius:12px;margin:0 24px 16px;padding:10px 12px;font-size:12.5px;font-weight:600}.auth-form .form-error,.mfa-card .form-error{margin:0}.filter-bar{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:10px;margin-bottom:16px}.filter-bar>select{width:auto;min-width:180px}.search-field{flex:1;min-width:220px;position:relative;display:block}.search-field app-icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:16px}.search-field input{padding-left:38px}.report-filters label{display:flex;align-items:center;gap:8px;color:var(--muted)}.report-filters input{width:auto}.table-panel{overflow:hidden;margin-bottom:18px}.table-panel>header{padding-bottom:18px}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:760px}.planning-grid table{min-width:420px}th{color:var(--muted);font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;text-align:left;padding:11px 16px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface-sunken)}td{padding:14px 16px;border-bottom:1px solid var(--border);color:var(--body);font-size:13px}th:first-child,td:first-child{padding-left:24px}th:last-child,td:last-child{padding-right:24px}tbody tr{transition:background .12s var(--ease)}tbody tr:hover{background:var(--surface-hover)}tbody tr:last-child td{border-bottom:0}td strong,td small{display:block}td strong{font-weight:600}td small{color:var(--muted);margin-top:3px;font-size:11.5px}.amount{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}td.amount{font-weight:700;color:var(--ink)}.category-chip,.status-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:var(--cream-soft);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--body);font-size:11.5px;font-weight:600;white-space:nowrap}.status-chip{background:var(--positive-soft);border-color:transparent;color:var(--positive)}.status-chip:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.status-chip.warn{background:var(--warning-soft);color:var(--warning)}.row-action{border:1px solid var(--border-strong);background:transparent;color:var(--body);border-radius:var(--radius-pill);padding:5px 12px;font-size:12px;font-weight:700;cursor:pointer;transition:background .15s var(--ease),color .15s var(--ease),border-color .15s var(--ease)}.row-action:hover{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.reversed-row{opacity:.55}.empty-table{min-height:140px;display:grid;place-content:center;text-align:center;gap:5px}.empty-table span{color:var(--muted)}.page-state{min-height:300px;display:grid;place-content:center;justify-items:center;text-align:center;gap:10px;border:1px dashed var(--border-strong);border-radius:var(--radius-lg);color:var(--muted);background:color-mix(in srgb,var(--surface) 50%,transparent)}.page-state.error{color:var(--negative)}.wallet-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;margin-bottom:18px}.wallet-grid>.page-state{grid-column:1/-1}.wallet-card{position:relative;overflow:hidden;isolation:isolate;min-height:176px;border-radius:var(--radius-lg);padding:20px;background:var(--band-glow),var(--band);color:var(--band-ink);box-shadow:var(--shadow-band);display:flex;flex-direction:column}.wallet-card.usd{background:var(--band-glow),var(--wallet-usd)}.wallet-card:after{content:"";position:absolute;z-index:-1;width:220px;height:220px;right:-90px;bottom:-120px;border:40px solid rgba(255,255,255,.05);border-radius:50%}.wallet-card header{display:flex;justify-content:space-between;align-items:center;color:var(--band-muted);font-weight:700;font-size:11px}.wallet-card header>span:last-child{background:#ffffff1a;border:1px solid var(--band-line);color:var(--band-ink);border-radius:var(--radius-pill);padding:3px 9px;letter-spacing:.06em}.provider-mark{background:#64748b;color:#fff;border-radius:8px;padding:5px 7px;font-weight:800;text-transform:lowercase}.provider-mercado_pago{background:#009ee3}.provider-brubank{background:#6c3ce9}.provider-deel{background:#15357a}.provider-wise{background:#9fe870;color:#163300}.provider-payoneer{background:#ff4800}.provider-bank{background:#475569}.provider-cash{background:#2e7d32}.wallet-card p{margin:auto 0 4px;padding-top:24px;color:var(--band-muted);font-size:12px;font-weight:600}.wallet-card strong{color:#fff;font:700 26px Figtree;letter-spacing:-.02em;display:block;font-variant-numeric:tabular-nums}.wallet-card small{color:var(--band-muted);display:block;margin-top:4px}.wallet-card.capital{background:var(--surface);color:var(--ink);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.wallet-card.capital:after{border-color:color-mix(in srgb,var(--ink) 4%,transparent)}.wallet-card.capital header{color:var(--muted)}.wallet-card.capital header>span:last-child{background:var(--surface-sunken);border-color:var(--border);color:var(--body)}.wallet-card.capital p,.wallet-card.capital small{color:var(--muted)}.wallet-card.capital strong{color:var(--ink)}.capital-mark{background:var(--accent-soft);color:var(--accent-soft-ink);border-radius:8px;padding:5px 7px;font-weight:800}.wallet-edit{position:absolute;right:14px;bottom:14px;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--band-line);background:#ffffff14;color:var(--band-ink);cursor:pointer;opacity:.7;transition:opacity .15s var(--ease),background .15s var(--ease)}.wallet-edit:hover,.wallet-edit:focus-visible{opacity:1;background:#ffffff29}.wallet-edit svg{width:16px;height:16px}.wallet-card.capital .wallet-edit{border-color:var(--border);background:var(--surface-sunken);color:var(--body)}.wallet-card.capital .wallet-edit:hover{background:var(--surface-hover)}.button.danger{background:var(--negative-soft);color:var(--negative)}.form-actions .push-left{margin-right:auto}.form-hint.after-actions{margin:12px 24px 0;text-align:right}.archived-panel{margin-bottom:18px}.archived-panel summary{padding:16px 24px;cursor:pointer;font-weight:700;color:var(--body)}.archived-panel[open] summary{border-bottom:1px solid var(--border)}.group-heading{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:4px 0 12px}.group-heading h2{margin:0;font-size:15px}.group-heading p{margin:0;color:var(--muted);font-size:12.5px}.page-state.compact-state{min-height:120px;padding:16px}.two-column,.planning-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:18px}.two-column>.panel,.planning-grid>.panel{margin-bottom:0}.import-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:18px;align-items:start}.import-guide{position:relative;overflow:hidden;isolation:isolate;background:var(--band-glow),var(--band);color:var(--band-ink);border-radius:var(--radius-lg);box-shadow:var(--shadow-band);padding:24px}.import-guide:after{content:"";position:absolute;z-index:-1;width:260px;height:260px;right:-120px;bottom:-130px;border:48px solid rgba(255,255,255,.04);border-radius:50%}.import-guide h2{color:#fff;font-size:17px}.import-guide ol{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:18px}.import-guide li{display:flex;gap:12px}.import-guide li>span{width:28px;height:28px;flex:0 0 auto;border-radius:50%;background:var(--cream);color:var(--green-900);display:grid;place-items:center;font-weight:800;font-size:12px}.import-guide strong{color:#fff;font-size:13px}.import-guide p{color:var(--band-muted);font-size:12px;margin:3px 0 0}.mapping-box{border:1px solid var(--border);background:var(--surface-sunken);border-radius:var(--radius-md);padding:14px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.mapping-box p{grid-column:1/-1;margin:0;color:var(--muted);font-size:12px}.file-field{position:relative;border:1.5px dashed var(--border-strong);border-radius:var(--radius-md);background:var(--surface-sunken);min-height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;padding:16px;cursor:pointer;transition:border-color .15s var(--ease),background .15s var(--ease)}.file-field:hover{border-color:var(--accent);background:var(--accent-soft)}.file-field input{position:absolute;opacity:0;pointer-events:none}.file-field app-icon{font-size:22px;color:var(--accent-soft-ink);margin-bottom:4px}.file-field span{color:var(--accent-soft-ink);font-size:13px;font-weight:700}.file-field small{color:var(--muted);font-weight:500}.preview-panel{margin-top:18px;overflow:hidden}.preview-panel>header{padding-bottom:18px}.import-stats{display:flex;gap:25px;border-top:1px solid var(--border);padding:12px 24px}.import-stats span{color:var(--muted)}.import-stats strong{margin-right:5px}.notice{margin:16px 24px;padding:12px 14px;border-radius:12px;background:var(--surface-sunken);border:1px solid var(--border);color:var(--muted);font-size:12px}.notice.warning{color:var(--warning);background:var(--warning-soft);border-color:var(--warning-border)}.report-summary{position:relative;overflow:hidden;isolation:isolate;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:10px;background:var(--band-glow),var(--band);border-radius:24px;box-shadow:var(--shadow-band);margin-bottom:16px}.report-summary span{padding:18px 20px;border-radius:16px;background:var(--band-tile);border:1px solid var(--band-line)}.report-summary small{color:var(--band-muted);display:block;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.report-summary strong{color:#fff;font:700 26px Figtree;letter-spacing:-.02em;display:block;margin-top:8px;font-variant-numeric:tabular-nums}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.settings-grid .scope-panel{grid-column:1/-1}.category-list{list-style:none;padding:12px 24px 16px;margin:0;display:grid}.category-list li{display:grid;grid-template-columns:12px 1fr auto;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid var(--border)}.category-list li:last-child{border-bottom:0}.category-list li>span{width:12px;height:12px;border-radius:4px;box-shadow:inset 0 0 0 1px #00000014}.category-list strong{font-weight:600}.category-list small{color:var(--muted);font-size:11.5px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--radius-pill);padding:2px 9px}.inline-create{display:grid;grid-template-columns:1fr 130px 48px auto;gap:8px;padding:0 24px 24px}.inline-create input[type=color]{padding:4px;cursor:pointer}.security-ok{display:inline-flex;align-items:center;gap:6px;background:var(--positive-soft)!important;color:var(--positive)!important;border:0!important;border-radius:var(--radius-pill);padding:6px 11px!important;font-weight:800!important;letter-spacing:.04em}.security-panel dl{margin:16px 24px}.security-panel dl>div{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid var(--border)}.security-panel dl>div:last-child{border-bottom:0}.security-panel dt{color:var(--muted)}.security-panel dd{margin:0;color:var(--ink);font-weight:700;min-width:0;overflow-wrap:anywhere;text-align:right}.scope-panel ul{list-style:none;padding:16px 24px 24px;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}.scope-panel li{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:var(--radius-md);background:var(--surface-sunken);border:1px solid var(--border);font-weight:600}.scope-panel li app-icon{width:24px;height:24px;padding:4px;border-radius:50%;background:var(--positive-soft);color:var(--positive)}.scope-panel li.out{color:var(--muted);font-weight:500}.scope-panel li.out app-icon{background:var(--surface);color:var(--muted);border:1px solid var(--border)}.auth-page{min-height:100vh;min-height:100dvh;position:relative;display:grid;place-items:center;padding:96px 24px;background:radial-gradient(90% 120% at 50% 30%,#0b4a29 0%,var(--green-900) 45%,var(--green-950) 100%);overflow:hidden;isolation:isolate}.auth-canvas{position:absolute;inset:0;z-index:-1}.auth-page:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(60% 70% at 50% 50%,rgba(0,34,15,.5) 0%,transparent 100%)}.auth-top{position:absolute;top:34px;left:clamp(24px,7vw,120px)}.auth-form-wrap{width:min(100%,440px)}.auth-form{width:100%;display:grid;gap:19px}.auth-card{background:var(--surface);border-radius:var(--radius-lg);padding:40px 38px 30px;box-shadow:0 30px 80px #00140873,0 2px 6px #00140833}.auth-form h2{font-size:34px;margin-bottom:5px}.auth-form>div>p{color:var(--muted)}.security-copy{text-align:center;color:var(--muted);font-size:11px;line-height:1.6}.mfa-page{position:relative;overflow:hidden;isolation:isolate;min-height:100vh;display:grid;place-items:center;padding:28px;background:var(--band-glow),var(--band)}.mfa-page:after{content:"";position:absolute;z-index:-1;width:560px;height:560px;right:-200px;bottom:-260px;border:90px solid rgba(255,255,255,.04);border-radius:50%}.mfa-card{width:min(100%,610px);background:var(--surface);border-radius:24px;padding:32px;box-shadow:0 25px 70px #00000040}.mfa-heading{display:flex;gap:15px;align-items:flex-start;padding-bottom:20px;border-bottom:1px solid var(--border)}.mfa-heading h1{margin:0 0 5px;font-size:25px}.mfa-heading p{color:var(--muted);margin:0}.lock-mark{width:42px;height:42px;flex:0 0 auto;display:grid;place-items:center;border-radius:13px;background:var(--positive-soft);color:var(--positive);font-size:22px}.enrollment{display:grid;grid-template-columns:160px 1fr;gap:20px;align-items:center;padding:24px 0}.enrollment img{width:160px;height:160px;background:#fff;border-radius:12px;border:1px solid var(--border)}.enrollment h2,.challenge-copy h2{font-size:18px;margin-bottom:7px}.enrollment p,.challenge-copy p{color:var(--muted);font-size:13px;line-height:1.6}.challenge-copy{padding:25px 0 10px}.mfa-card form{display:grid;gap:15px}.totp-input{font:700 24px Figtree;letter-spacing:.22em;text-align:center;min-height:54px}.loading-line{padding:30px 0;color:var(--muted);text-align:center}@keyframes spin{to{transform:rotate(360deg)}}.spinner{width:22px;height:22px;border:3px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.report-body{position:relative}.report-body.is-loading>:not(.report-loading){opacity:.4;pointer-events:none;transition:opacity .15s var(--ease)}.report-loading{position:absolute;z-index:5;top:120px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:12px;padding:12px 20px;background:var(--surface-raised);color:var(--ink);border:1px solid var(--border);border-radius:var(--radius-pill);box-shadow:0 8px 24px #0e1a1224;font-weight:700;font-size:13px}@media(prefers-reduced-motion:reduce){.spinner{animation-duration:2.4s}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.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}.sk{display:block;border-radius:6px;background:currentColor;opacity:.14}.wallet-card.skeleton{pointer-events:none}.wallet-card.skeleton:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.1) 50%,transparent 80%);animation:shimmer 1.6s var(--ease) infinite}.wallet-card.capital.skeleton:before{background:linear-gradient(100deg,transparent 20%,color-mix(in srgb,var(--surface-sunken) 90%,transparent) 50%,transparent 80%)}.wallet-card.skeleton .sk-mark{width:38px;height:26px;border-radius:8px}.wallet-card.skeleton .sk-label{width:34%;height:11px;margin-top:auto}.wallet-card.skeleton .sk-amount{width:62%;height:26px;margin-top:10px;opacity:.2}.wallet-card.skeleton .sk-line{width:48%;height:11px;margin-top:10px}.wallet-grid .wallet-card.skeleton:nth-child(2) .sk-amount{width:52%}.wallet-grid .wallet-card.skeleton:nth-child(3) .sk-amount{width:70%}.skeleton-row td{padding:14px 16px}.skeleton-row .sk{height:12px;width:100%;color:var(--ink);opacity:.07;animation:pulse 1.6s var(--ease) infinite}@keyframes pulse{50%{opacity:.14}}@media(prefers-reduced-motion:reduce){.wallet-card.skeleton:before,.skeleton-row .sk{animation:none}}@media(max-width:1180px){.metric-row{grid-template-columns:repeat(2,1fr)}}@media(max-width:1050px){.two-column,.planning-grid,.cash-band{grid-template-columns:1fr}}@media(max-width:820px){.app-shell{grid-template-columns:1fr;grid-template-rows:62px 1fr}.sidebar{position:fixed;left:0;transform:translate(-105%);transition:transform .2s var(--ease);width:264px}.nav-open .sidebar{transform:translate(0)}.topbar,.content{grid-column:1}.topbar{height:62px;padding:0 16px}.mobile-menu{display:grid}.secure-label{display:none}.content{padding:20px 16px}.scrim{display:block;position:fixed;inset:0;z-index:25;background:#0000006b;border:0}.dashboard-grid,.settings-grid{grid-template-columns:1fr}.settings-grid .scope-panel{grid-column:1}.import-layout{grid-template-columns:1fr}.auth-page{padding:96px 16px 32px}.auth-page:after{background:#00220f59}.auth-top{left:50%;transform:translate(-50%)}.auth-card{padding:32px 24px 24px}}@media(max-width:590px){.page-heading{align-items:flex-start;flex-direction:column}.heading-actions{width:100%;justify-content:space-between}.metric-row,.report-summary{grid-template-columns:1fr}.wallet-strip{grid-auto-flow:row;grid-auto-columns:auto}.wallet-strip article{min-height:0;padding:14px 16px}.form-grid,.inline-fields{grid-template-columns:1fr}.form-grid .span-2{grid-column:1}.filter-bar{align-items:stretch;flex-direction:column}.filter-bar>select,.report-filters input{width:100%}.report-filters label{display:grid}.user-copy{display:none}.user-button{padding-right:10px}.inline-create{grid-template-columns:1fr 1fr}.enrollment{grid-template-columns:1fr;text-align:center}.enrollment img{margin:auto}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
