@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/6fe53d21e6e7ebd8-s.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:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/8ebc6e9dde468c4a-s.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:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/9e7b0a821b9dfcb4-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/636a5ac981f94f8b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6fe53d21e6e7ebd8-s.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:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8ebc6e9dde468c4a-s.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:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/9e7b0a821b9dfcb4-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/636a5ac981f94f8b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/6fe53d21e6e7ebd8-s.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:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/8ebc6e9dde468c4a-s.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:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/9e7b0a821b9dfcb4-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/636a5ac981f94f8b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/6fe53d21e6e7ebd8-s.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:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/8ebc6e9dde468c4a-s.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:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/9e7b0a821b9dfcb4-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/636a5ac981f94f8b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/6fe53d21e6e7ebd8-s.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:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/8ebc6e9dde468c4a-s.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:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/9e7b0a821b9dfcb4-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/636a5ac981f94f8b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Plus Jakarta Sans Fallback;src:local("Arial");ascent-override:98.88%;descent-override:21.15%;line-gap-override:0.00%;size-adjust:104.98%}.__className_383dac{font-family:Plus Jakarta Sans,Plus Jakarta Sans Fallback;font-style:normal}.__variable_383dac{--font-sans:"Plus Jakarta Sans","Plus Jakarta Sans Fallback"}:root{--ink:#1a1d23;--muted:#6b7280;--line:#e5e7eb;--border:#e5e7eb;--purple:#7b2ff7;--purple-dark:#6a1fe0;--purple-light:#c29bff;--purple-tint:rgba(123,47,247,.14);--fuchsia:#f0489b;--brand-gradient:linear-gradient(150deg,#7b2ff7,#f0489b);--brand-gradient-btn:linear-gradient(100deg,#7b2ff7,#e0479f);--brand-gradient-btn-hover:linear-gradient(100deg,#6a1fe0,#cc3389);--mint:#00e0a4;--mint-ink:#00996f;--mint-tint:rgba(0,224,164,.14);--bg:#f8f9fb;--card:#fff;--green:var(--mint-ink);--foreground:#1a1d23;--background:#f8f9fb;--radius:14px;--shadow-sm:0 1px 3px rgba(0,0,0,.04),0 1px 2px rgba(0,0,0,.06);--shadow:0 4px 12px rgba(0,0,0,.05),0 1px 3px rgba(0,0,0,.08);--shadow-lg:0 10px 30px rgba(0,0,0,.08),0 4px 8px rgba(0,0,0,.04)}*{box-sizing:border-box;margin:0}body{font-family:var(--font-sans),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg);font-size:14px;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.sidebar{position:fixed;left:0;top:0;bottom:0;width:250px;background:#fff;border-right:1px solid var(--line);padding:28px 16px 12px;display:flex;flex-direction:column;z-index:10;overflow:hidden}.sidebar nav{flex:1 1 auto;min-height:0;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.sidebar nav::-webkit-scrollbar{display:none}.brand{height:42px;display:flex;align-items:center;gap:1px;padding:0 10px;margin-bottom:16px}.brand>span{font-size:22px;font-weight:800;letter-spacing:-1.2px;white-space:nowrap}.billing-card-wrap{padding:16px 0;border-bottom:1px solid var(--line)}.billing-card-form{display:grid;grid-gap:14px;gap:14px}.billing-card-error{margin:0;color:#dc2626;font-size:13px}.billing-card-actions{display:flex;gap:8px;justify-content:flex-end}.billing-card-actions button{padding:9px 16px;border-radius:9px;border:1px solid var(--line);background:#fff;font-size:13px;font-weight:600;cursor:pointer}.billing-card-actions button.primary{background:#7b2ff7;border-color:#7b2ff7;color:#fff}.billing-card-actions button:disabled{opacity:.55;cursor:default}.billing-hint{font-size:13px;color:#6b7280;margin:12px 0}.billing-plan-switch .billing-plan-buttons{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.billing-invoices{padding-top:18px}.billing-invoices h4{font-size:13px;font-weight:700;color:#6b7280;letter-spacing:.4px;text-transform:uppercase;margin:0 0 8px}.billing-invoice-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;grid-gap:12px;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}.billing-invoice-row>div{display:flex;flex-direction:column;gap:2px;min-width:0}.billing-invoice-row b{font-size:14px}.billing-invoice-row span{font-size:12px;color:#6b7280}.billing-invoice-row a{display:inline-flex;align-items:center;gap:5px;text-decoration:none}.settings-action.danger{color:#dc2626}@media (max-width:640px){.billing-invoice-row{grid-template-columns:1fr auto}.billing-invoice-row a{grid-column:2}.billing-plan-switch .billing-plan-buttons{justify-content:flex-start}}.brand-dot{color:#7b2ff7;font-style:normal;letter-spacing:-3px}.logo{height:32px;width:32px;display:grid;place-items:center;color:#7b2ff7}.close-nav{display:none;margin-left:auto;border:0;background:none}.nav-label{font-size:10px;font-weight:700;color:#9ca3af;letter-spacing:1.3px;padding:0 12px;margin:18px 0 4px}.sidebar nav a{height:38px;border-radius:10px;display:flex;align-items:center;gap:12px;padding:0 12px;color:#4c473f;text-decoration:none;font-weight:520;margin:1px 0;cursor:pointer;transition:all .15s;font-size:12.5px;white-space:nowrap;overflow:hidden}.sidebar nav a svg{width:18px;flex-shrink:0;color:#9b968d}.sidebar nav a:hover{background:#faf9f7;border-radius:10px;color:#4c473f}.sidebar nav a:hover svg{color:#8746e5}.sidebar nav a.active{background:linear-gradient(135deg,#f2e8ff,#e4dffe);color:#8746e5;font-weight:600;box-shadow:inset 3px 0 0 #7b2ff7}.sidebar nav a.active svg{color:#8746e5}.nav-count{margin-left:auto;background:#e6e3fb;color:#6a1fe0;font-size:11px;border-radius:12px;padding:2px 8px;font-weight:600;min-width:24px;text-align:center}.sidebar-search{display:flex;align-items:center;gap:8px;background:#f5f4f1;border-radius:10px;padding:8px 12px;margin:0 4px 10px}.sidebar-search svg{width:16px;flex-shrink:0;color:#9b968d}.sidebar-search input{border:none;background:none;outline:none;font-size:13px;width:100%;color:var(--text)}.sidebar-search kbd{font-size:10px;color:#9b968d;background:#eae8e4;border-radius:4px;padding:2px 6px;font-family:inherit;border:none;white-space:nowrap}.sidebar-add-tx{display:flex;align-items:center;justify-content:center;gap:8px;width:calc(100% - 8px);margin:0 4px 8px;padding:10px;border-radius:10px;border:none;background:#7b2ff7;color:#fff;font-size:13.5px;font-weight:600;cursor:pointer;transition:background .15s}.sidebar-add-tx:hover{background:#7f38dc}.sidebar-add-tx svg{width:17px}.sidebar-bottom{background:#f8f7f5;border-top:1px solid var(--line);margin:0 -16px -12px;padding:12px 16px}.sidebar-logout{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:8px 0;margin-top:8px;border:none;background:#fff;color:#6b6560;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s;border-radius:8px}.sidebar-logout:hover{color:#dc2626;background:#fef2f2}.sidebar-logout svg{width:14px}.sidebar-legal-row{display:flex;align-items:center;justify-content:center;gap:6px;padding:6px 0 0}.sidebar-legal-row button{background:none;border:none;font-size:10px;color:var(--muted);cursor:pointer;padding:0}.sidebar-legal-row button:hover{color:#7b2ff7}.sidebar-legal-row span{font-size:10px;color:var(--border)}.profile{padding:0 4px;display:flex;align-items:center;gap:10px;cursor:pointer}.avatar{height:30px;width:30px;border-radius:8px;background:linear-gradient(135deg,#1e293b,#334155);color:#fff;display:grid;place-items:center;font-weight:700;font-size:10px}.profile>div:nth-child(2){min-width:0;flex:1 1}.profile b,.profile span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile b{font-size:11.5px}.profile span{font-size:10.5px;color:var(--muted);margin-top:2px}main{margin-left:250px;min-height:100vh}header{height:72px;background:#fff;border-bottom:1px solid var(--line);padding:0 32px;justify-content:space-between;position:-webkit-sticky;position:sticky;top:0;z-index:15}.search,header{display:flex;align-items:center}.search{width:280px;gap:10px;color:#9ca3af}.search input{border:0;outline:0;width:100%;color:var(--ink);font-size:13px}.search kbd{background:#f3f4f6;border:1px solid var(--line);border-radius:6px;padding:3px 7px;font-size:10px;white-space:nowrap;color:var(--muted)}.header-actions{gap:10px}.header-actions,.scan-btn{display:flex;align-items:center}.scan-btn{background:var(--purple,#7b2ff7);border:1px solid var(--purple,#7b2ff7);border-radius:10px;height:40px;padding:0 16px;gap:8px;color:#fff;font-size:13px;font-weight:600;transition:all .15s;cursor:pointer}.scan-btn:hover{background:#8135e4;border-color:#8135e4}.ghost{background:#fff;border:1px solid var(--line);border-radius:10px;padding:0 14px;color:var(--ink);font-weight:500}.ghost,.primary{height:40px;display:flex;align-items:center;gap:8px;font-size:13px}.primary{border:0;background:#7b2ff7!important;color:#fff!important;border-radius:10px;padding:0 18px;justify-content:center;font-weight:600;box-shadow:0 2px 8px #7b2ff730;transition:all .15s}.primary:hover{background:#7f35e0!important;box-shadow:0 4px 14px #7b2ff740}.menu-btn{display:none;background:none;border:0}.content{padding:32px;max-width:1540px;margin:auto}.month-mobile{display:none;background:#fff;border-bottom:1px solid var(--line);padding:8px 16px}.month-mobile .month-nav{width:100%;justify-content:center}.dash-top{display:grid;grid-template-columns:380px 1fr;grid-gap:14px;gap:14px;margin-bottom:14px;align-items:stretch}.dash-greeting{font-size:24px;font-weight:700;margin-bottom:16px}.dash-dark-card{background:linear-gradient(150deg,#904aff,#832ff2 48%,#782ae1);color:#fff;border-radius:16px;padding:28px;display:flex;flex-direction:column}.dash-dark-label{font-size:12px;font-weight:600;color:#e8d8ff;letter-spacing:.03em}.dash-dark-amount{font-size:36px;font-weight:800;margin-bottom:10px}.dash-dark-desc{font-size:12.5px;font-weight:500;color:#d8bcff;margin-bottom:18px;line-height:1.5}.dash-dark-desc span{color:#ffd479;font-weight:700}.dash-dark-pills{display:flex;gap:8px;margin-bottom:16px}.dash-pill{background:#ffffff1c;border:1px solid #ffffff24;border-radius:12px;padding:14px 18px;flex:1 1}.dash-pill span{display:block;font-size:11px;font-weight:500;color:#e8d8ff;margin-bottom:6px}.dash-pill b{font-size:18px;font-weight:700}.dash-pill .positive,.dash-streak{color:#3debb4}.dash-streak{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;background:#3debb415;padding:8px 14px;border-radius:10px;margin-top:auto}.dash-streak span{width:8px;height:8px;border-radius:50%;background:#3debb4;flex:none}.dash-dark-spacer{flex:1 1;min-height:8px}.dash-dark-cta{width:100%;padding:12px;border:none;border-radius:12px;background:#fff;color:#7426d9;font-size:14px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:8px;transition:background .15s}.dash-dark-cta:hover{background:#f2eeff}.dash-dark-actions{display:grid;grid-template-columns:1fr 1fr;grid-gap:6px;gap:6px}.dash-dark-actions button{padding:8px;border:1px solid #ffffff26;border-radius:10px;background:#ffffff14;color:#e6e1ff;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s}.dash-dark-actions button:hover{background:#ffffff26;color:#fff}.dash-month-strip{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px 28px;display:flex;flex-direction:column;gap:14px}.dash-strip-label{display:flex;justify-content:space-between;align-items:center}.dash-strip-label>span:first-child{font-size:14px;font-weight:700}.dash-strip-label>span:last-child{font-size:11px;color:var(--muted)}.dash-month-hero{display:flex;align-items:center;gap:20px;padding-bottom:14px;border-bottom:1px solid var(--line)}.dash-donut-wrap{position:relative;width:80px;height:80px;flex:none}.dash-donut-pct{transform:translate(-50%,-60%);font-size:14px;font-weight:800;color:#00996f}.dash-donut-label,.dash-donut-pct{position:absolute;top:50%;left:50%}.dash-donut-label{transform:translate(-50%,50%);font-size:8px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.03em}.dash-bilans-block span{font-size:12px;color:var(--muted);display:block;margin-bottom:4px}.dash-bilans-block b{font-size:26px;font-weight:800;letter-spacing:-.5px;display:block}.dash-bilans-block em{font-style:normal;font-size:11px;color:var(--muted);display:block;margin-top:4px}.dash-strip-row{display:flex;align-items:center;gap:14px}.dash-strip-row>span{font-size:13px;font-weight:500;min-width:80px}.dash-strip-bar{flex:1 1;height:8px;border-radius:4px;background:var(--background);overflow:hidden}.dash-bar-green{background:#00996f}.dash-bar-green,.dash-bar-red{display:block;height:100%;border-radius:4px}.dash-bar-red{background:#ef4444}.dash-strip-row b{font-size:14px;font-weight:700;min-width:110px;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.dash-cats-head{display:flex;justify-content:space-between;font-size:12px;font-weight:600;color:var(--fg);margin-top:4px}.dash-cats-head span:last-child{color:var(--muted);font-weight:500}.dash-cats-bar{display:flex;height:10px;border-radius:5px;overflow:hidden;gap:2px}.dash-cats-bar i{display:block;border-radius:3px;min-width:4px}.dash-cats-legend{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:11px;color:var(--fg)}.dash-cats-legend span{display:flex;align-items:center;gap:5px}.dash-cats-legend i{width:8px;height:8px;border-radius:50%;flex:none}.dash-cats-legend b{font-weight:600;color:var(--muted)}.dash-section-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.dash-section-label>span:first-child{font-size:13px;font-weight:700;color:var(--fg)}.dash-section-count{font-size:12px;color:var(--muted)}@media(max-width:900px){.dash-top{grid-template-columns:1fr}.dash-dark-card{border-radius:14px;padding:22px}.dash-dark-amount{font-size:30px}}@media(max-width:768px){.dash-dark-pills{flex-direction:column;gap:6px}}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:14px;gap:14px;margin-bottom:14px}@media(max-width:900px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:500px){.stats-grid{grid-template-columns:1fr}}.stat-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;gap:2px;position:relative;transition:all .2s;overflow:hidden}.stat-card:hover{border-color:#d6b3ff}.stat-icon{display:none}.stat-data>span{font-size:12px;color:var(--muted);font-weight:500}.stat-data strong{display:block;font-size:22px;margin:4px 0;letter-spacing:-.5px;font-weight:700}.stat-data p{font-size:11px;color:var(--muted);margin:0}.stat-data p svg{width:13px;height:13px}.stat-data em{font-style:normal;color:#9ca3af;margin-left:3px}.stat-card[data-accent=purple]{border-left:3px solid #7c3aed}.stat-card[data-accent=green]{border-left:3px solid #00996f}.stat-card[data-accent=orange]{border-left:3px solid #ea580c}.stat-card[data-accent=blue]{border-left:3px solid #2563eb}.account-balances-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px;margin-bottom:14px}.account-bal-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:18px;display:flex;align-items:center;gap:14px;cursor:pointer;transition:all .2s}.account-bal-card:hover{border-color:#d6b3ff}.account-bal-icon{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;flex:none}.account-bal-icon.purple{background:#f2e8ff;color:#7c3aed}.account-bal-icon.blue{background:#dbeafe;color:#2563eb}.account-bal-icon.green{background:#d5f7ec;color:#00996f}.account-bal-icon.orange{background:#fff7ed;color:#ea580c}.account-bal-card>div:nth-child(2){flex:1 1;min-width:0}.account-bal-card span{font-size:12px;color:var(--muted);display:block;margin-bottom:4px}.account-bal-card strong{font-size:17px;font-weight:700;letter-spacing:-.3px}.account-bal-arrow{color:#d1d5db;flex:none}.fx-summary{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px;margin-bottom:14px}.fx-head{display:flex;align-items:center;gap:8px;margin-bottom:14px}.fx-head svg{color:var(--purple)}.fx-head b{font-size:14px;font-weight:700}.fx-head span{font-size:12px;color:var(--muted);margin-left:auto}.fx-cards{display:flex;gap:14px}.fx-card{flex:1 1;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:14px}.fx-card .fx-flag{font-size:24px;margin-bottom:8px}.fx-data{display:flex;align-items:baseline;gap:8px;margin-bottom:10px}.fx-data b{font-size:16px;font-weight:700}.fx-data span{font-size:11px;color:var(--muted)}.fx-vals{display:flex;gap:14px}.fx-vals>div{flex:1 1}.fx-vals span{font-size:10px;color:var(--muted);display:block;text-transform:uppercase;letter-spacing:.3px;margin-bottom:2px}.fx-vals strong{font-size:13px;display:block}.fx-vals em{font-size:10px;color:var(--muted);font-style:normal;display:block;margin-top:1px}.budget-alerts{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.budget-alert{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:12px;font-size:13px;animation:slideIn .25s ease}.budget-alert b{font-weight:700}.budget-alert span{flex:1 1}.budget-alert button{border:1px solid;background:none;color:inherit;font-size:11px;font-weight:700;padding:4px 12px;border-radius:6px;cursor:pointer;white-space:nowrap;opacity:.8;transition:opacity .15s}.budget-alert button:hover{opacity:1}.alert-over{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.alert-warn{background:#fffbeb;color:#d97706;border:1px solid #fde68a}.today-summary{padding:0;margin-bottom:14px;background:linear-gradient(135deg,#fff,#fafafe);border:1px solid var(--line);border-radius:16px;overflow:hidden;display:flex;flex-direction:column}.td-head{display:flex;align-items:flex-start;justify-content:space-between;padding:28px 28px 20px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#ecfdf7,transparent)}.td-label{font-size:15px;font-weight:700;color:var(--fg);display:block}.td-count{font-size:11px;color:var(--muted);margin-top:4px}.td-balance span{font-size:10px;color:var(--muted);display:block;text-align:right;margin-bottom:2px}.td-balance strong{font-size:22px;font-weight:800;letter-spacing:-.5px}.td-inline-stats{display:flex;gap:12px;font-size:13px;font-weight:600;padding:12px 28px;color:var(--muted)}.td-inline-stats .positive{color:#00996f}.td-list{display:flex;flex-direction:column}.td-item{display:flex;align-items:center;gap:12px;padding:12px 28px;border-top:1px solid var(--border);transition:background .15s}.td-item:first-child{border-top:none}.td-item:hover{background:#f8f8fc}.td-dot{width:10px;height:10px;border-radius:50%;flex:none}.td-item-info{flex:1 1;min-width:0}.td-item-info b{font-size:14px;font-weight:600;display:block}.td-item-info span{font-size:11px;color:var(--muted);margin-top:2px}.td-firm{font-size:9px;color:#7b2ff7;background:#f2e8ff;padding:2px 8px;border-radius:5px;font-weight:700;margin-right:4px}.td-item strong{font-size:14px;font-weight:700;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-left:auto}.dash-see-all{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;padding:14px 28px;background:none;border:none;border-top:1px solid var(--line);font-size:12px;font-weight:600;color:var(--muted);cursor:pointer;transition:all .15s;margin-top:auto}.dash-see-all:hover{color:#7b2ff7;background:#f8f8fc}.yearly-summary{padding:28px;margin-bottom:14px}.yr-head{margin-bottom:20px}.yr-head b{font-size:18px;font-weight:700;display:block}.yr-head span{font-size:12px;color:var(--muted)}.yr-hero{display:grid;grid-template-columns:auto 1fr 1fr;grid-gap:24px;gap:24px;align-items:center;margin-bottom:20px}.yr-donut-wrap{position:relative;width:90px;height:90px;flex:none}.yr-donut-pct{transform:translate(-50%,-60%);font-size:16px;font-weight:800;color:#00996f}.yr-donut-label,.yr-donut-pct{position:absolute;top:50%;left:50%}.yr-donut-label{transform:translate(-50%,55%);font-size:8px;color:var(--muted);font-weight:600;letter-spacing:.03em}.yr-hero-label{font-size:12px;color:var(--muted);display:block;margin-bottom:4px}.yr-hero-data b{font-size:28px;font-weight:800;letter-spacing:-.5px;display:block}.yr-hero-sub{font-size:11px;color:var(--muted);margin-top:4px}.yr-bar-row{display:flex;justify-content:space-between;font-size:12px;margin-bottom:4px}.yr-bar-row span{color:var(--muted)}.yr-bar-row b{font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.yr-bar{height:12px;border-radius:6px;background:var(--background);overflow:hidden;margin-bottom:14px}.yr-cats-label{font-size:10px;font-weight:700;color:var(--muted);letter-spacing:.04em;margin-bottom:10px;padding-top:16px;border-top:1px solid var(--line)}.yr-cats{display:flex;flex-direction:column;gap:8px}.yr-cat-row{display:flex;align-items:center;gap:10px;font-size:13px}.yr-cat-row span{min-width:100px;font-weight:500}.yr-cat-row .yr-cat-bar{flex:1 1;height:10px;border-radius:5px;background:var(--background);overflow:hidden}.yr-cat-bar i{display:block;height:100%;border-radius:3px;background:#7b2ff7}.yr-cat-row b{font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:90px;text-align:right}.tx-summary-bar{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px;margin-bottom:16px}.tx-summary-stat{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 20px 16px;box-shadow:var(--shadow-sm)}.txs-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.txs-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center}.txs-icon-green{background:#d5f7ec;color:#00996f}.txs-icon-red{background:#fee2e2;color:#ef4444}.txs-icon-purple{background:#f2e8ff;color:#7c3aed}.txs-icon-blue{background:#dbeafe;color:#2563eb}.txs-trend{font-size:11px;font-weight:700;padding:3px 8px;border-radius:6px}.txs-trend-up{color:#00996f;background:#d5f7ec}.txs-trend-down{color:#ef4444;background:#fee2e2}.tx-summary-stat>span{font-size:10px;color:var(--muted);display:block;margin-bottom:4px;text-transform:uppercase;letter-spacing:.4px;font-weight:700}.tx-summary-stat strong{font-size:20px;font-weight:800;display:block;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.txs-sub{font-size:11px;color:var(--muted);margin:6px 0 0;font-weight:500}.month-pace{padding:28px;margin-bottom:14px}.pace-head{display:flex;align-items:center;gap:8px;margin-bottom:14px}.pace-head b{font-size:15px;font-weight:700}.pace-dot{width:8px;height:8px;border-radius:50%;flex:none}.pace-dot.pace-on-track{background:#00996f}.pace-dot.pace-over{background:#ef4444}.pace-dot.pace-under{background:#3b82f6}.pace-status{font-size:12px;font-weight:600;color:var(--muted)}.pace-track-wrap{margin-bottom:14px;padding-top:22px}.pace-track{position:relative;height:20px;border-radius:999px;background:#f2f0ec;overflow:visible}.pace-fill{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#19ca9b,#0fad83);transition:width .3s}.pace-today-marker{position:absolute;top:-4px;bottom:-4px;width:2px;background:#8746e5;transform:translateX(-1px);z-index:2}.pace-today-label{position:absolute;bottom:calc(100% + 4px);left:50%;transform:translateX(-50%);font-size:10px;font-weight:600;color:#8746e5;white-space:nowrap}.pace-legend{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:11px;color:var(--fg);margin-bottom:12px}.pace-legend span{display:flex;align-items:center;gap:6px}.pace-ldot{width:7px;height:7px;border-radius:50%;flex:none}.pace-remaining{margin-left:auto;font-weight:700}.pace-tip{font-size:12px;padding:10px 14px;border-radius:10px;line-height:1.4}.pace-tip-on-track{background:#ecfdf7;color:#00996f}.dashboard-grid{display:grid;grid-template-columns:1.3fr .7fr;grid-gap:14px;gap:14px;margin-bottom:14px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.budget-card,.flow-card{padding:24px}.card-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:4px}.card-head h2{font-size:16px;margin:0 0 4px;font-weight:700}.card-head p{font-size:12px;color:var(--muted);margin:0}.ghost{height:36px;font-size:12px}.budget-summary{display:flex;align-items:center;gap:32px;background:#fafafe;border:1px solid #f0f0f5;border-radius:12px;padding:20px 28px;margin:20px 0}.ring{--p:210deg;width:110px;height:110px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#7c3aed var(--p),#e8e6f6 0);position:relative}.ring:after{content:"";position:absolute;inset:12px;border-radius:50%;background:#fff}.ring div{z-index:1;text-align:center}.ring span,.ring strong{display:block}.ring strong{font-size:22px;font-weight:800}.ring span{font-size:9px;color:var(--muted);margin-top:3px}.budget-numbers>span{font-size:11px;color:var(--muted)}.budget-numbers>strong{display:block;font-size:22px;margin:6px 0;font-weight:700}.budget-numbers>p{font-size:11px;color:var(--muted);margin:0}.remain{display:inline-flex;align-items:center;gap:6px;background:#d5f7ec;color:#00996f;border-radius:8px;padding:6px 10px;font-size:11px;margin-top:10px;font-weight:600}.budget-list{margin-top:4px}.budget-row{display:flex;align-items:flex-start;gap:12px;padding:14px 0;border-top:1px solid #f3f4f6}.budget-row>.category-icon{flex:none;margin-top:2px}.category-icon{height:38px;width:38px;border-radius:10px;display:grid;place-items:center;flex:none}.budget-detail{flex:1 1;min-width:0}.budget-detail>div:first-child{display:flex;align-items:center;gap:8px;font-size:13px;margin-bottom:8px}.budget-detail>div span:last-child{margin-left:auto;color:var(--ink);font-weight:500}.budget-detail em{font-style:normal;color:#9ca3af}.fixed{font-size:9px;color:#6b7280;padding:2px 6px;border-radius:4px;font-weight:600}.fixed,.progress{background:#f3f4f6}.progress{height:6px;border-radius:6px;overflow:hidden}.progress i{display:block;height:100%;border-radius:6px;transition:width .3s}.cat-details{margin-top:4px}.cat-details summary.cat-toggle{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:#8746e5;cursor:pointer;font-weight:500;-webkit-user-select:none;-moz-user-select:none;user-select:none;background:none;border:none;padding:0;margin-left:0;list-style:none}.cat-details summary.cat-toggle::-webkit-details-marker{display:none}.cat-details summary.cat-toggle:after{content:"▸";font-size:10px}.cat-details[open] summary.cat-toggle:after{content:"▾"}.cat-details summary.cat-toggle:hover{opacity:.7}.cat-details-list{padding:8px 0;display:grid;grid-gap:6px;gap:6px}.cat-detail-row span{color:var(--muted)}.cat-detail-row strong{font-weight:600;font-size:12px;display:flex;align-items:center;gap:6px}.over{color:#ef4444!important}.cat-detail-row{display:flex;justify-content:space-between;font-size:12px;padding:4px 0}.budget-row>button{border:0;background:none;color:#9ca3af;padding:6px;border-radius:8px;transition:all .15s}.budget-row>button:hover{background:#f3f4f6;color:var(--ink)}.legend{display:flex;gap:18px;justify-content:flex-end;margin:20px 0 8px}.legend span{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:6px}.legend i{width:8px;height:8px;border-radius:50%}.chart{height:240px;border-bottom:1px solid var(--line);justify-content:space-around;padding:20px 10px 0}.bars,.chart{display:flex;align-items:flex-end}.bars{height:190px;width:36px;gap:3px}.bars i{display:block;width:16px;background:#7c3aed;border-radius:5px 5px 0 0;transition:height .3s}.bars i:nth-child(2){background:#e7d5ff}.flow-bottom{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;padding:16px 0 0;margin-top:4px;border-top:1px solid var(--line)}.flow-bottom>div{padding:12px 14px;background:var(--bg);border-radius:10px;border:1px solid var(--border)}.flow-bottom div+div{border-left:none;padding-left:14px}.flow-bottom b,.flow-bottom span{display:block}.flow-bottom span{font-size:11px;color:var(--muted);margin-bottom:6px;font-weight:500}.flow-bottom b{font-size:16px;letter-spacing:-.3px}.transactions-card{padding:24px;margin-bottom:14px}.tabs{background:#f3f4f6;padding:4px;border-radius:10px}.tabs button{border:0;background:none;border-radius:7px;padding:7px 14px;color:#6b7280;font-size:12px;font-weight:500;transition:all .15s}.tabs button.selected{background:#fff;color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.08);font-weight:600}.tx-table{margin-top:18px;overflow:visible}.tx-col-headers,.tx-row{display:grid;grid-template-columns:42px 1fr 156px 120px 100px 120px 36px;align-items:center;grid-gap:0;gap:0}.tx-col-headers{padding:10px 20px 14px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#9b968d}.tx-col-headers span:nth-child(6){text-align:right}.tx-row{padding:12px 20px;border-bottom:1px solid #f4f5f6;transition:background .15s}.tx-row:hover{background:#f8f9fb}.tx-row.tx-selected{background:#f2e8ff40}.tx-check{display:grid;place-items:center}.tx-check input{width:16px;height:16px;accent-color:#7b2ff7;cursor:pointer;margin:0}.tx-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.tx-name{display:flex;align-items:center;gap:10px}.tx-name,.tx-name b{min-width:0;overflow:hidden}.tx-name b{font-size:14px;font-weight:700;white-space:nowrap;text-overflow:ellipsis}.tx-vat-badge{flex-shrink:0;padding:3px 7px;border-radius:999px;font-size:9px;font-weight:800;letter-spacing:.2px;white-space:nowrap}.tx-vat-badge.has-vat{color:#b45309;background:#fffbeb;border:1px solid #fde68a}.tx-vat-badge.no-vat{color:#78716c;background:#f5f5f4;border:1px solid #e7e5e4}.tx-category{overflow:hidden;text-overflow:ellipsis}.tx-category,.tx-method{font-size:13px;color:#4c473f;white-space:nowrap}.tx-method{display:flex;align-items:center;gap:6px}.tx-method-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.tx-account span{font-size:11px;border-radius:8px;padding:4px 10px;font-weight:600;white-space:nowrap}.tx-account .firm{background:#f2e8ff;color:#7c3aed}.tx-account .personal{background:#dbeafe;color:#2563eb}.tx-account .cash{background:#fef3c7;color:#d97706}.tx-amount{text-align:right;font-size:14px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.tx-amount.positive{color:#00996f}.tx-menu-wrap{position:relative;flex:none}.tx-menu-btn{border:none;background:none;color:#c4c4c4;padding:4px;border-radius:6px;cursor:pointer;transition:all .15s}.tx-menu-btn:hover{background:#f3f4f6;color:var(--ink)}.tx-menu-dropdown{display:none;position:absolute;right:0;top:100%;background:#fff;border:1px solid var(--line);border-radius:10px;padding:4px;min-width:140px;z-index:50;box-shadow:0 8px 24px rgba(0,0,0,.12)}.tx-menu-open .tx-menu-dropdown{display:flex;flex-direction:column}.tx-menu-dropdown button{display:flex;align-items:center;gap:8px;padding:8px 12px;border:none;background:none;font-size:12px;font-weight:500;color:var(--fg);cursor:pointer;border-radius:6px;transition:background .1s;white-space:nowrap}.tx-menu-dropdown button:hover{background:#f3f4f6}.tx-menu-dropdown button.remove{color:#ef4444}.tx-menu-dropdown button.remove:hover{background:#fef2f2}.all-link{display:flex;align-items:center;gap:7px;margin:14px auto 0;border:0;background:none;color:#7b2ff7;font-size:12px;font-weight:600}.all-link:hover{text-decoration:underline}.bulk-bar{gap:12px;padding:10px 16px;background:#f2e8ff;border-radius:10px;margin-bottom:12px;font-size:13px;font-weight:500}.bulk-bar,.bulk-bar button{display:flex;align-items:center}.bulk-bar button{border:0;padding:6px 12px;border-radius:8px;font-size:12px;font-weight:600;background:#fff;cursor:pointer;gap:6px}.bulk-bar button.remove{color:#ef4444}.modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.4);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;display:grid;place-items:center;padding:20px;touch-action:none}.modal,.modal-backdrop{overscroll-behavior:contain}.modal{width:min(520px,100%);background:#fff;border-radius:18px;padding:28px;box-shadow:var(--shadow-lg);max-height:90vh;overflow-y:auto;touch-action:pan-y}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;margin:-28px -28px 24px;padding:22px 28px 18px;background:linear-gradient(135deg,#f8f7ff,#f0eeff);border-bottom:1px solid #e8e4f8;border-radius:var(--radius) var(--radius) 0 0}.modal-head h2{margin:0 0 4px;font-size:20px;font-weight:700}.modal-head p{margin:0;color:var(--muted);font-size:12px}.modal-head button{border:0;background:#fff;border-radius:8px;width:34px;height:34px;display:grid;place-items:center;transition:background .15s;box-shadow:0 1px 3px rgba(0,0,0,.08)}.modal-head button:hover{background:#f3f4f6}.modal-head button svg{width:18px}.modal form label,.modal>form>label{display:block;font-size:12px;font-weight:600;color:#4b5563;margin-bottom:16px}.modal input,.modal select,.modal textarea{display:block;width:100%;height:44px;border:1.5px solid #e5e7eb;border-radius:10px;padding:0 14px;margin-top:6px;outline:none;background:#fff;font-size:14px;transition:border .15s,box-shadow .15s}.modal textarea{height:80px;padding:10px 14px;resize:vertical}.modal input:focus,.modal select:focus,.modal textarea:focus{border-color:#7b2ff7;box-shadow:0 0 0 3px #7b2ff715}.modal input[type=date]{color:var(--ink);-webkit-appearance:none;text-align:left;line-height:48px}.form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.form-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);padding-top:20px;margin-top:8px}.form-actions button{height:40px;padding:0 18px;border:1.5px solid #e5e7eb;background:#fff;border-radius:10px;font-size:13px;font-weight:500;transition:all .15s}.form-actions button:hover{background:#f9fafb}.delete-btn{color:#ef4444!important;border-color:#fecaca!important}.delete-btn:hover{background:#fef2f2!important}.field-help{font-weight:400;color:var(--muted)}.color-picker{display:flex;gap:10px;margin-top:8px;flex-wrap:wrap}.color-dot{width:32px;height:32px;border-radius:50%;border:2.5px solid transparent;cursor:pointer;transition:all .2s}.color-dot:hover{transform:scale(1.15)}.color-dot.active{border-color:var(--ink);box-shadow:0 0 0 2.5px #fff,0 0 0 4.5px var(--ink);transform:scale(1.1)}.check-label{display:flex!important;align-items:center;gap:8px;flex-direction:row!important}.check-label input{width:18px;height:18px;margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:2px solid var(--border);border-radius:5px;background:var(--bg);cursor:pointer;position:relative;flex-shrink:0}.check-label input:checked{background:#7b2ff7;border-color:#7b2ff7}.check-label input:checked:after{content:"";position:absolute;left:5px;top:2px;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.management-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.management-toolbar h2{font-size:24px;font-weight:800;letter-spacing:-.5px;margin:0 0 4px}.management-toolbar p{font-size:14px;color:var(--muted);margin:0}.bucket-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));grid-gap:20px;gap:20px;align-items:start}.bucket-card{border-radius:18px;border:1px solid rgba(0,0,0,.06);background:#fff;padding:24px 24px 20px;box-shadow:0 1px 2px rgba(0,0,0,.04),0 4px 14px rgba(0,0,0,.05);transition:box-shadow .25s,transform .25s}.bucket-card:hover{box-shadow:0 2px 6px rgba(0,0,0,.06),0 10px 24px rgba(0,0,0,.08);transform:translateY(-2px)}.bucket-head{display:flex;align-items:center;gap:12px;margin-bottom:20px}.bucket-head h3{font-size:16px;margin:0 0 1px;font-weight:700;letter-spacing:-.01em}.bucket-head p{font-size:12px;color:var(--muted);margin:0}.bucket-head>div:nth-child(2){flex:1 1;min-width:0}.bucket-actions{display:flex;gap:2px;margin-left:auto}.bucket-actions button{border:1px solid transparent;background:none;color:#b0aaa4;padding:6px;border-radius:8px;transition:all .15s}.bucket-actions button:hover{background:#f5f5f4;color:var(--ink);border-color:var(--line)}.bucket-actions button.remove:hover{color:#ef4444;background:#fef2f2;border-color:#fecaca}.bucket-stats strong.positive{color:#00996f}.bucket-stats strong.over{color:#ef4444}.cat-count{font-size:11px;font-weight:500}.cat-row{display:flex;align-items:center;gap:11px;padding:8px 0}.cat-empty{opacity:.5}.cat-pct{font-size:12px;font-weight:700;color:#adb1b9;min-width:32px;text-align:right;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-style:normal}.savings-section{width:100%}.savings-sim{padding:22px!important;margin-bottom:20px}.savings-sim-head{display:flex;align-items:center;gap:12px;margin-bottom:16px}.savings-sim-head h3{margin:0 0 2px;font-size:15px}.savings-sim-head p{margin:0;font-size:12px;color:var(--muted)}.savings-sim-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px}.savings-sim-grid span{font-size:11px;color:var(--muted);display:block;margin-bottom:4px}.savings-sim-grid strong{font-size:15px}.sim-highlight{background:#ecfdf7;padding:12px;border-radius:10px}.sim-highlight p{font-size:10px;color:var(--muted);margin:4px 0 0}.saving-actions{display:flex;align-items:center;justify-content:space-between;margin-top:14px}.saving-transfer{height:34px!important;font-size:12px!important}.saving-history{margin-top:12px;border-top:1px solid var(--border);padding-top:10px}.saving-history-title{font-size:11px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px;display:block;margin-bottom:6px}.saving-history-row{display:flex;align-items:center;gap:8px;font-size:12px;padding:4px 0}.saving-history-date{color:#9ca3af;min-width:40px}.saving-history-name{flex:1 1;color:#4b5563;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.saving-history-amount{font-weight:600;color:#00996f;white-space:nowrap}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:14px;gap:14px;margin-top:16px}.project-avatar{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;flex-shrink:0}.project-values{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px;margin-bottom:10px}.project-values span{font-size:11px;color:var(--muted);display:block;margin-bottom:2px}.project-values b{font-size:13px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.settings-modal{max-width:800px!important;width:min(800px,100%)!important;padding:0!important;overflow:hidden!important;height:min(580px,80vh)!important;display:flex!important;flex-direction:column!important}.settings-modal .modal-head{margin:0;padding:20px 28px 16px;border-radius:18px 18px 0 0;flex-shrink:0}.settings-layout{display:flex;flex:1 1;min-height:0}.settings-nav{width:200px;background:#fafafa;border-right:1px solid #f0f0f0;padding:12px;flex-shrink:0;display:flex;flex-direction:column;gap:2px}.settings-nav button{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;border:none;background:none;border-radius:10px;font-size:13px;font-weight:500;color:#71717a;cursor:pointer;transition:all .15s;text-align:left}.settings-nav button:hover{background:#f8f3ff;color:#6a1fe0}.settings-nav button.active{background:#7b2ff7;color:#fff;font-weight:600}.settings-nav button svg{flex-shrink:0}.settings-content{flex:1 1;padding:32px;overflow-y:auto;min-height:0}.settings-panel{animation:fadeIn .2s ease}.settings-panel-head{margin-bottom:20px}.settings-panel-head h3{font-size:18px;font-weight:700;margin:0 0 4px}.settings-panel-head p{font-size:13px;color:var(--muted);margin:0}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-top:1px solid #f3f4f6}.settings-row:first-of-type{border-top:0}.settings-row b{font-size:13px;font-weight:600;display:block}.settings-row span{font-size:11px;color:var(--muted);display:block;margin-top:2px}.settings-row>strong{font-size:13px;color:var(--ink);white-space:nowrap}.settings-action{height:34px;padding:0 14px;border:1px solid var(--line);background:#fff;border-radius:8px;font-size:12px;font-weight:600;color:var(--ink);cursor:pointer;transition:all .15s;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}.settings-action:hover{border-color:#d6b3ff;background:#faf5ff;color:var(--purple)}.settings-action.green{border-color:#a8f2da;color:#00996f}.settings-action.green:hover{background:#ecfdf7}.settings-action.danger{border-color:#fecaca;color:#ef4444}.settings-action.danger:hover{background:#fef2f2}.settings-danger-zone{margin-top:16px;padding-top:16px!important;border-top:2px solid #fecaca!important}.settings-version{text-align:center;padding:24px 0 8px;font-size:12px;color:#9ca3af}.sharing-invite{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.sharing-invite input{width:100%;height:44px;border:1.5px solid #e5e7eb;border-radius:10px;padding:0 14px;font-size:13px}.sharing-invite input:focus{border-color:#7b2ff7;outline:none}.sharing-invite select{flex:1 1;height:44px;border:1.5px solid #e5e7eb;border-radius:10px;padding:0 12px;font-size:13px}.sharing-invite button{height:44px;padding:0 18px;border-radius:10px;font-weight:600}.sharing-section{margin-top:20px}.sharing-section h4{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#6b7280;margin-bottom:10px}.sharing-row{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:var(--card,#fff);border:1.5px solid var(--border,#e5e7eb);border-radius:12px;margin-bottom:8px;transition:.15s}.sharing-row:hover{border-color:#d1d5db}.sharing-row b{font-size:13px;display:block;color:var(--ink,#1a1d23)}.sharing-row span{font-size:12px;color:#6b7280}.sharing-actions{display:flex;gap:6px;align-items:center}.sharing-actions select{height:32px;border:1px solid #e5e7eb;border-radius:6px;font-size:12px;padding:0 8px}.sharing-actions button{font-size:12px;padding:5px 10px;border-radius:6px;border:1px solid #e5e7eb;background:#fff;cursor:pointer}.sharing-actions button.primary{background:var(--accent,#618ee8);color:#fff;border-color:transparent}.sharing-actions button.danger{color:#ef4444;border-color:#fecaca}.sharing-steps-bar{display:flex;align-items:center;gap:8px;margin-bottom:20px;padding:12px 16px;background:#f9f8f6;border-radius:10px}.sharing-steps-bar>svg{color:#d1d5db;flex-shrink:0;width:14px}.sharing-step-chip{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:#6b7280;white-space:nowrap}.sharing-step-chip span{width:20px;height:20px;border-radius:50%;background:#7b2ff7;color:#fff;font-size:10px;font-weight:700;display:grid;place-items:center;flex-shrink:0}.sharing-row-info{display:flex;align-items:center;gap:10px}.sharing-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#a967ff,#c386ff);color:#fff;font-size:13px;font-weight:700;display:grid;place-items:center;flex-shrink:0}.sharing-status-pending{color:#f59e0b!important}.sharing-status-active{color:#00c48c!important}.sharing-empty-state{text-align:center;padding:40px 20px}.sharing-empty-state svg{color:#d1d5db;margin-bottom:12px}.sharing-empty-state p{font-size:15px;font-weight:600;color:#374151;margin:0 0 4px}.sharing-empty-state span{font-size:13px;color:#9ca3af}.sharing-invite button{display:flex;align-items:center;gap:6px;white-space:nowrap}@media(max-width:600px){.sharing-invite{flex-wrap:wrap}.sharing-invite input{min-width:0}.sharing-row{flex-direction:column;align-items:flex-start;gap:8px}.sharing-steps-bar{flex-wrap:wrap}}.install-auto-section{text-align:center;padding:20px;background:linear-gradient(135deg,#f0edff,#e8f4f8);border-radius:14px;margin-bottom:20px}.install-now-btn{height:48px;padding:0 32px;font-size:15px;display:inline-flex;align-items:center;gap:8px}.install-auto-hint{display:block;margin-top:8px;font-size:12px;color:#6b7280}.install-platforms-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px;margin-bottom:20px}.install-platform-card{background:var(--card,#fff);border:1.5px solid var(--border,#e5e7eb);border-radius:14px;padding:20px;transition:.2s}.install-platform-card:hover{border-color:#a967ff;box-shadow:0 4px 12px rgba(159,103,255,.1)}.install-platform-icon{width:40px;height:40px;border-radius:10px;background:#f3f4f6;display:grid;place-items:center;margin-bottom:12px;color:#374151}.install-platform-icon.android{background:#e8f5e9;color:#4caf50}.install-platform-icon.desktop{background:#e3f2fd;color:#2196f3}.install-platform-card h4{font-size:14px;font-weight:700;margin:0 0 12px;color:var(--ink,#1a1d23)}.install-platform-card ol{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;counter-reset:step}.install-platform-card li{font-size:12px;color:var(--muted,#6b7280);line-height:1.5;padding-left:22px;position:relative}.install-platform-card li:before{counter-increment:step;content:counter(step);position:absolute;left:0;width:16px;height:16px;border-radius:50%;background:#f3f4f6;font-size:10px;font-weight:700;display:grid;place-items:center;color:#7b2ff7}.install-platform-card li b{color:var(--ink,#1a1d23)}.install-icon-hint{font-size:11px;color:#9ca3af}.install-features{display:flex;flex-wrap:wrap;gap:8px}.install-feature{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#ecfdf7;border-radius:8px;font-size:12px;color:#00644a;font-weight:500}.install-feature svg{color:#00c48c}@media(max-width:600px){.install-platforms-grid{grid-template-columns:1fr}}.tx-excluded{opacity:.5}.tx-excluded .tx-name b{text-decoration:line-through}.tx-actions .excluded{color:#f59e0b}.saving-account-select{height:32px;border:1.5px solid #e5e7eb;border-radius:8px;padding:0 8px;font-size:12px;background:#fff}.referral-hero{display:flex;align-items:center;gap:14px;background:#f9f8f6;border:1px solid var(--border);border-radius:12px;padding:16px 18px;margin-bottom:20px}.referral-hero svg{color:#7b2ff7;flex-shrink:0}.referral-hero b{font-size:13px;display:block;color:#1a1d23}.referral-hero span{font-size:12px;color:#6b7280;line-height:1.4}.referral-loading{text-align:center;padding:32px;color:#9ca3af;font-size:13px}.referral-link-card{background:var(--card,#fff);border:1.5px solid var(--border,#e5e7eb);border-radius:14px;padding:18px;margin-bottom:16px}.referral-link-card label{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;display:block;margin-bottom:10px}.referral-link-row{display:flex;gap:8px}.referral-link-row input{flex:1 1;height:44px;border:1.5px solid #e5e7eb;border-radius:10px;padding:0 14px;font-size:13px;background:#f9fafb;cursor:pointer;font-family:monospace}.referral-link-row input:focus{border-color:#7b2ff7;outline:none}.referral-link-row button{height:44px;padding:0 20px;border-radius:10px;font-size:13px;font-weight:600}.referral-code-hint{display:block;margin-top:10px;font-size:12px;color:#9ca3af}.referral-code-hint b{color:#7b2ff7}.referral-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:12px;gap:12px}.referral-stat{background:var(--card,#fff);border:1.5px solid var(--border,#e5e7eb);border-radius:14px;padding:20px;text-align:center}.referral-stat span{font-size:12px;color:#6b7280;display:block;margin-bottom:4px}.referral-stat b{font-size:24px;color:#7b2ff7}.referral-list{margin-top:16px}.referral-list h4{font-size:13px;font-weight:700;margin:0 0 10px;color:var(--fg)}.referral-row{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border:1px solid var(--border,#e5e7eb);border-radius:10px;margin-bottom:6px}.referral-row-info{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--fg)}.referral-row-info svg{color:var(--muted)}.referral-status{font-size:11px;font-weight:600;padding:2px 8px;border-radius:8px}.shared-view-section{padding:0}.shared-list{display:grid;grid-gap:8px;gap:8px}.shared-list-card{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#f9fafb;border-radius:12px;cursor:pointer;transition:background .15s}.shared-list-card:hover{background:#f3f4f6}.shared-list-avatar{width:36px;height:36px;border-radius:50%;background:#7b2ff7;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600}.shared-list-card b{display:block;font-size:13px}.shared-list-card>div:nth-child(2){flex:1 1}.shared-list-card span{font-size:11px;color:#6b7280}.shared-back{display:flex;align-items:center;gap:4px;font-size:13px;color:#6b7280;background:none;border:none;cursor:pointer;padding:0;margin-bottom:12px}.shared-stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px;margin:12px 0}.shared-stats>div{background:#f9fafb;border-radius:10px;padding:12px;text-align:center}.shared-stats span{font-size:11px;color:#6b7280;display:block}.shared-stats b{font-size:16px}.shared-budgets,.shared-transactions{margin-top:16px}.shared-budgets h4,.shared-transactions h4{font-size:13px;font-weight:600;margin-bottom:8px}.shared-budget-row{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:13px}.shared-budget-row span:first-child{width:120px}.shared-budget-row b{font-size:12px;white-space:nowrap}.shared-tx-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #f3f4f6;font-size:13px}.shared-tx-row span:first-child{font-weight:600;min-width:80px}.shared-tx-row span:nth-child(2){flex:1 1}.shared-tx-date{color:#9ca3af;font-size:11px}.daily-limit-widget{background:#ecfdf7;border:1px solid #a8f2da;border-radius:12px;padding:14px 16px;margin-bottom:12px}.daily-limit-widget.warn{background:#fffbeb;border-color:#fde68a}.daily-limit-widget.over{background:#fef2f2;border-color:#fecaca}.daily-limit-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.daily-limit-head b{font-size:13px;flex:1 1}.daily-limit-head span{font-size:12px;color:#6b7280}.daily-limit-bar{height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden;margin-bottom:8px}.daily-limit-bar>div{height:100%;background:#00c48c;border-radius:3px;transition:width .3s}.daily-limit-widget.warn .daily-limit-bar>div{background:#f59e0b}.daily-limit-widget.over .daily-limit-bar>div{background:#ef4444}.daily-limit-info{display:flex;justify-content:space-between;font-size:12px;color:#374151}.daily-limit-info b{font-weight:600}.daily-limit-over{color:#ef4444;font-weight:500}.daily-limit-spent{color:#6b7280}.settings-select{height:36px;border:1.5px solid #e5e7eb;border-radius:8px;padding:0 10px;font-size:13px;background:#fff;outline:none}.accounts-list{display:grid;grid-gap:8px;gap:8px;margin-top:12px}.account-config-row{display:flex;align-items:center;gap:12px;padding:12px 16px;border:1px solid var(--border);border-radius:10px}.account-config-color{width:12px;height:12px;border-radius:50%;flex-shrink:0}.account-config-info{flex:1 1}.account-config-info b{display:block;font-size:13px}.account-config-info span{font-size:11px;color:#9ca3af}.account-config-delete{background:none;border:none;color:#ef4444;cursor:pointer;padding:4px;border-radius:6px}.account-config-delete:hover{background:#fef2f2}.account-add-section{margin-top:16px}.autosave-input{display:flex;align-items:center;gap:6px}.autosave-input input{width:90px;height:36px;border:1.5px solid #e5e7eb;border-radius:8px;padding:0 10px;font-size:13px;outline:none;text-align:right}.autosave-input span{font-size:13px;color:#6b7280}.autosave-summary{margin-top:16px;padding:16px;background:linear-gradient(135deg,#ecfdf7,#ecfdf5);border:1px solid #a8f2da;border-radius:12px;display:flex;align-items:flex-start;gap:12px;color:#007a58}.autosave-summary b{display:block;font-size:13px;color:#00644a}.autosave-summary span{display:block;font-size:12px;color:#4b5563;margin-top:2px}.autosave-note{font-size:11px!important;color:#9ca3af!important;margin-top:6px!important}.settings-panel form label{display:block;font-size:12px;font-weight:600;color:#4b5563;margin-bottom:14px}.settings-panel form input{display:block;width:100%;height:42px;border:1.5px solid #e5e7eb;border-radius:10px;padding:0 14px;margin-top:5px;outline:none;font-size:14px;transition:border .15s}.settings-panel form input:focus{border-color:#7b2ff7;box-shadow:0 0 0 3px #7b2ff715}.settings-cat-chip.default{color:var(--ink)}.cat-count,.settings-cat-chip.default{background:var(--background);border:1px solid var(--border)}.cat-count{font-style:normal;font-size:10px;color:var(--muted);padding:1px 6px;border-radius:10px;font-weight:600}.cat-custom-list{display:flex;flex-direction:column;gap:4px}.cat-custom-row{display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid var(--border);border-radius:10px;background:var(--card);transition:.15s}.cat-custom-row:hover{border-color:var(--purple)}.cat-custom-name{flex:1 1;font-size:13px;font-weight:600;color:var(--purple)}.cat-custom-row .cat-count{font-size:11px}.cat-custom-actions{display:flex;gap:4px}.cat-delete-btn,.cat-edit-btn{width:30px;height:30px;border:1px solid var(--border);background:var(--card);border-radius:7px;display:grid;place-items:center;cursor:pointer;color:var(--muted);transition:.15s}.cat-edit-btn:hover{border-color:var(--purple);color:var(--purple);background:#7b2ff708}.cat-delete-btn:hover{border-color:#ef4444;color:#ef4444;background:#ef444408}.cat-empty{font-size:13px;color:var(--muted);margin:0}.cat-input-wrap{display:flex;gap:6px;align-items:center}.cat-input-wrap input{flex:1 1}.cat-create-btn{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;font-size:12px;font-weight:600;color:#fff;background:var(--purple);border:none;border-radius:8px;white-space:nowrap;cursor:pointer;transition:.15s}.cat-create-btn:hover{opacity:.85}.cat-default-badge{font-style:normal;font-size:10px;color:var(--muted);background:var(--background);border:1px solid var(--border);padding:1px 6px;border-radius:10px;font-weight:500}.cat-custom-color{color:var(--purple)!important}.cat-picker{position:relative}.cat-picker-input{display:block;width:100%;height:44px;border:1.5px solid #e5e7eb;border-radius:10px;padding:0 14px;margin-top:6px;outline:none;background:#fff;font-size:14px;transition:border .15s,box-shadow .15s}.cat-picker-input:focus{border-color:#7b2ff7;box-shadow:0 0 0 3px #7b2ff715}.cat-picker-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1.5px solid #e5e7eb;border-radius:12px;box-shadow:var(--shadow-lg);max-height:220px;overflow-y:auto;z-index:50;padding:4px}.cat-picker-option{display:block;width:100%;text-align:left;padding:10px 12px;border:none;background:none;font-size:13px;border-radius:8px;cursor:pointer;transition:background .1s;color:var(--ink)}.cat-picker-option:hover{background:#f8f3ff}.cat-picker-option.active{background:#f2e8ff;color:var(--purple);font-weight:600}.cat-picker-create{display:flex;align-items:center;gap:6px;width:100%;text-align:left;padding:10px 12px;border:none;background:none;font-size:13px;border-radius:8px;cursor:pointer;color:var(--purple);font-weight:600;transition:background .1s}.cat-picker-create:hover{background:#f8f3ff}.cat-picker-empty{display:block;padding:10px 12px;font-size:12px;color:var(--muted)}.budget-form-label{position:relative}.budget-input-suffix{position:absolute;right:14px;bottom:14px;font-size:13px;color:var(--muted);font-weight:500;pointer-events:none}.budget-section-label{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);margin-bottom:10px}.budget-icon-picker{margin-bottom:18px}.budget-picker-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.budget-colors{display:flex;gap:8px}.budget-color-btn{width:30px;height:30px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:all .15s}.budget-color-btn.active{border-color:inherit;box-shadow:0 0 0 2px #fff,0 0 0 4px currentColor}.budget-color-btn:hover{transform:scale(1.1)}.budget-icons{display:flex;gap:4px;flex-wrap:wrap}.budget-icon-btn{width:36px;height:36px;border-radius:8px;border:1px solid var(--border);background:var(--card);color:var(--muted);cursor:pointer;display:grid;place-items:center;transition:all .15s}.budget-icon-btn.active{background:#7b2ff708}.budget-icon-btn.active,.budget-icon-btn:hover{border-color:var(--purple);color:var(--purple)}.budget-cat-label-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.budget-cat-counter{font-size:12px;color:var(--muted);font-weight:500}.budget-cat-picker{margin-bottom:16px}.modal-head-left{display:flex;align-items:center;gap:12px}.budget-tags-selected{display:flex;flex-wrap:wrap;gap:6px;min-height:28px;margin-bottom:8px}.budget-tag{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;background:#7b2ff712;color:var(--purple);border:1px solid #7b2ff725;border-radius:8px;font-size:12px;font-weight:600;animation:tagIn .2s ease-out}@keyframes tagIn{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.budget-tag-x{background:none;border:none;color:var(--purple);cursor:pointer;font-size:15px;padding:0 0 0 2px;line-height:1;opacity:.6;transition:.15s}.budget-tag-x:hover{opacity:1}.budget-cat-input{width:100%}.budget-cat-quick{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.budget-cat-chip{padding:4px 10px;border:1px solid var(--border);border-radius:6px;background:var(--card);font-size:11px;color:var(--muted);cursor:pointer;transition:.15s}.budget-cat-chip:hover{border-color:var(--purple);color:var(--purple);background:#7b2ff706}.rates-grid{display:grid;grid-gap:12px;gap:12px}.rate-card{display:flex;align-items:center;gap:14px;padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--background)}.rate-flag{font-size:28px}.rate-card b{font-size:14px;display:block;margin-bottom:2px}.rate-card span{font-size:11px;color:var(--muted)}.rate-card .settings-rate-input{margin-left:auto}.guide{display:grid;grid-gap:18px;gap:18px}.guide div{padding:18px;background:#f9fafb;border-radius:12px}.guide b{font-size:14px;display:block;margin-bottom:6px}.guide p{font-size:13px;color:var(--muted);margin:0;line-height:1.5}.scanner-modal{max-width:560px}.scanner-content{gap:16px}.scanner-content,.upload-zone{display:flex;flex-direction:column}.upload-zone{align-items:center;gap:10px;padding:40px 20px;border:2px dashed var(--line);border-radius:14px;cursor:pointer;text-align:center;transition:all .15s}.upload-zone:hover{border-color:#d6b3ff;background:#faf5ff}.upload-zone input{display:none}.upload-zone b{font-size:15px}.upload-zone span{font-size:12px;color:var(--muted)}.scan-progress{display:flex;align-items:center;gap:10px;padding:14px;background:#f2e8ff;border-radius:10px;font-size:13px;color:#6a1fe0;font-weight:500}.scan-progress i{width:20px;height:20px;border:2.5px solid #d6b3ff;border-top-color:#7b2ff7;border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.scan-success{display:flex;align-items:center;gap:8px;padding:12px 14px;background:linear-gradient(135deg,#ecfdf7,#ecfdf5);border:1px solid #a8f2da;border-radius:12px;font-size:13px;color:#007a58;font-weight:650;margin-bottom:8px}.scan-results{display:flex;flex-direction:column;gap:12px}.scan-form-kicker{display:flex;align-items:center;gap:10px;padding-bottom:2px}.scan-form-kicker>span{width:28px;height:28px;display:grid;place-items:center;flex:none;border-radius:9px;background:#f2e8ff;color:var(--purple);font-size:12px;font-weight:800}.scan-form-kicker b,.scan-form-kicker small{display:block}.scan-form-kicker b{font-size:13px}.scan-form-kicker small{margin-top:2px;color:var(--muted);font-size:11px;font-weight:450}.scan-single-form{display:flex;flex-direction:column;gap:12px}.scan-items-list{display:grid;grid-gap:8px;gap:8px;max-height:340px;overflow-y:auto;padding:2px;scrollbar-width:thin}.scan-item{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;grid-gap:11px;gap:11px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 1px 2px rgba(15,23,42,.03);transition:border-color .15s,background .15s,box-shadow .15s}.scan-item-selected{background:#faf9ff;border-color:#cda6ff;box-shadow:0 3px 12px rgba(133,62,248,.08)}.scan-item-check{display:grid;place-items:center;margin:0!important}.scan-item-check input{width:21px;height:21px;accent-color:var(--purple)}.scan-item-info{flex:1 1;min-width:0}.scan-item-info b{font-size:13px;display:block;line-height:1.3}.scan-item-info span{font-size:11px;color:var(--muted)}.scan-item-info select{width:100%;height:38px;margin-top:7px;padding:0 30px 0 10px;border:1px solid #e4d5f8;border-radius:9px;background:#fff;color:var(--ink);font-size:12px;font-weight:550}.scan-item>strong{align-self:start;padding-top:2px;font-size:14px;white-space:nowrap}.scan-summary{display:flex;gap:16px;padding:14px;background:linear-gradient(135deg,#f7f5ff,#fbfbff);border:1px solid #e4dffe;border-radius:12px}.scan-summary>div{flex:1 1}.scan-summary span{font-size:11px;color:var(--muted);display:block;margin-bottom:2px}.scan-summary strong{font-size:16px;color:#50228d}.scan-account-pick .primary{height:34px;font-size:12px;padding:0 14px}.scan-retry{border:0;background:none;color:var(--purple);font-size:13px;font-weight:500;cursor:pointer;padding:4px 0}.scan-form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.scan-form-row label{margin-bottom:12px}.scan-form-row input[type=date]{color:var(--ink);-webkit-appearance:none;line-height:48px}.scan-split-btn{width:100%;min-height:46px;padding:10px;border:1px solid #d6b3ff;background:#faf5ff;border-radius:11px;color:var(--purple);font-size:13px;font-weight:650;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:7px;transition:all .15s}.scan-split-btn:hover{background:#f2e8ff;border-color:var(--purple)}.scan-split-view{display:flex;flex-direction:column;gap:12px}.scan-split-hint{display:flex;align-items:flex-start;gap:7px;margin:0;padding:10px 12px;border-radius:10px;background:#f8f7ff;color:#6a1fe0;font-size:12px;line-height:1.4}.scan-split-hint svg{flex:none;margin-top:1px}.scan-bulk-category{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,1fr);align-items:center;grid-gap:10px;gap:10px;margin:0;padding:12px;border:1px solid #e3cdff;border-radius:12px;background:#fff;color:var(--ink);font-size:12px;font-weight:650;box-shadow:0 2px 10px rgba(133,62,248,.06)}.scan-bulk-category select{height:40px;padding:0 30px 0 10px;border:1px solid #e3cdff;border-radius:9px;background:#faf9ff;color:var(--ink);font-size:12px;font-weight:550}.scan-group-account{margin:0;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff}.scan-group-account select{margin-top:7px}.ksef-section{width:100%}.ksef-booking-info{gap:8px;padding:12px;background:#7b2ff710;border:1px solid #7b2ff725;border-radius:10px;color:var(--purple);margin-bottom:16px}.ksef-booking-info,.toast{display:flex;align-items:center;font-size:13px}.toast{gap:10px;padding:14px 18px;border-radius:12px;font-weight:500;box-shadow:var(--shadow-lg);animation:slideIn .25s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.toast-undo{border:1px solid;background:none;color:inherit;font-size:11px;font-weight:700;padding:3px 10px;border-radius:6px;cursor:pointer;margin-left:6px;opacity:.8;transition:opacity .15s;white-space:nowrap}.toast-undo:hover{opacity:1}@media (max-width:1100px){.account-balances-grid,.stats-grid{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.flow-card{min-height:auto}}@media (max-width:760px){.sidebar{transform:translateX(-100%);transition:.25s;box-shadow:10px 0 40px rgba(0,0,0,.08)}.sidebar.open{transform:translateX(0)}.close-nav{display:block}main{margin-left:0}header{height:64px;padding:0 16px}.menu-btn{display:block}.header-period,.scan-btn span,.search{display:none}.scan-btn{width:44px;height:44px;padding:0;justify-content:center;border-radius:12px}.content{padding:20px 16px calc(80px + env(safe-area-inset-bottom))}.month-mobile{display:block}.stats-grid{grid-template-columns:1fr 1fr;gap:10px}.account-balances-grid{grid-template-columns:1fr;gap:10px}.stat-card{padding:16px;min-height:auto}.stat-data strong{font-size:16px}.stat-data em{display:none}.dashboard-grid{display:flex;flex-direction:column;gap:14px}.flow-card{margin-top:0}.budget-summary{padding:16px;gap:20px}.ring{width:90px;height:90px}.ring strong{font-size:18px}.transactions-card{margin-top:0}.tx-col-headers{display:none}.tx-col-headers,.tx-row{grid-template-columns:34px 1fr auto 36px}.tx-row{padding:10px 8px}.tx-account,.tx-category,.tx-method{display:none}.tx-amount{font-size:13px}.tx-name{flex-wrap:wrap;gap:4px 8px}.tx-name b{flex-grow:1;flex-shrink:1;flex-basis:calc(100% - 18px)}.tx-vat-badge{margin-left:18px}.tabs{display:none}.header-actions .primary{font-size:12px;padding:0 14px}.form-grid{grid-template-columns:1fr}.modal{border-radius:18px 18px 0 0;margin-top:auto;max-height:92vh}.bucket-grid,.project-grid{grid-template-columns:1fr}.savings-sim-grid{grid-template-columns:1fr 1fr}.management-toolbar{flex-direction:column;align-items:flex-start;gap:12px}.tx-summary-bar{grid-template-columns:1fr 1fr;gap:10px}.tx-summary-stat{padding:14px 16px 12px}.tx-summary-stat strong{font-size:16px}.txs-sub{display:none}}@media (max-width:450px){.stats-grid{grid-template-columns:1fr;gap:8px}.budget-card,.flow-card,.transactions-card{padding:18px}.ghost{font-size:0}.ghost svg{margin:0}.budget-summary{padding:14px;flex-direction:column}.budget-numbers>strong{font-size:18px}.ring{width:80px;height:80px}.ring strong{font-size:17px}}.dash-dark-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.dash-eye{flex:none;width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:10px;background:#ffffff1c;color:#fff;cursor:pointer;transition:background .15s}.dash-eye:hover{background:#ffffff2e}.dash-dark-main{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:16px}.dash-dark-figures{min-width:0}.dash-dark-amount{display:flex;align-items:baseline;gap:2px;margin-bottom:14px;letter-spacing:-1px;line-height:1}.dash-dark-amount b{font-size:36px;font-weight:800}.dash-dark-amount span{font-size:20px;font-weight:700;color:#e8d8ff;letter-spacing:-.4px}.dash-dark-growth-label{font-size:12px;font-weight:500;color:#e8d8ff;margin-bottom:4px}.dash-dark-growth{display:flex;align-items:center;gap:6px;font-size:17px;font-weight:700;color:#fff}.dash-dark-growth.down{color:#ffc9c9}.dash-spark{flex:none;display:flex;align-items:flex-end;gap:7px;width:104px;height:88px}.dash-spark i{flex:1 1;border-radius:8px;background:#ffffff59;transition:height .3s}.dash-spark i.now{background:#fff}.dash-spark i.neg{background:#ffffff33}@media (max-width:500px){.dash-dark-main{gap:12px}.dash-spark{width:78px;height:70px;gap:5px}.dash-dark-amount b{font-size:30px}.dash-dark-amount span{font-size:17px}.dash-dark-growth{font-size:15px}}