:root{--ink:#16271e;--muted:#748078;--green:#24b868;--green-dark:#0b8548;--green-soft:#eaf8f0;--cream:#f5f7f3;--white:#fff;--line:#e5eae6;--amber:#f0a43a;--blue:#4b7fe6;--red:#e85d5d;--chart-rest:#e1e8e3;--nav-shadow:0 14px 38px #10271a2b}*{box-sizing:border-box}html,body{background:var(--cream);min-height:100%;color:var(--ink);margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{font:inherit}button{cursor:pointer}.loading{place-items:center;min-height:100vh;display:grid}.brand{letter-spacing:-.7px;color:var(--ink);align-items:center;gap:11px;font-size:21px;font-weight:900;display:flex}.logo-mark{background:#12243a;border-radius:13px;flex:none;width:44px;height:44px;display:block;overflow:hidden;box-shadow:0 8px 22px #08192e35}.logo-mark img{object-fit:cover;object-position:center;width:100%;height:100%;display:block;transform:scale(1.08)}.brand-name{gap:2px;line-height:1;display:grid}.brand-name b{letter-spacing:-.7px;font-size:20px}.brand-name small{color:#a17d25;letter-spacing:2.1px;font-size:7px;font-weight:900}.primary{color:#fff;background:var(--green);border:0;border-radius:14px;font-weight:800;transition:all .2s;box-shadow:0 8px 20px #1aae6330}.primary:hover{background:#1ca65d;transform:translateY(-1px)}.wide{width:100%;height:53px}.app-shell{min-height:100vh;display:flex}.sidebar{border-right:1px solid var(--line);z-index:20;background:#fff;flex-direction:column;width:248px;padding:24px 18px 18px;display:flex;position:fixed;inset:0 auto 0 0}.add-button{height:48px;margin:6px 4px 22px;font-size:13px}.add-button span{vertical-align:-1px;margin-right:6px;font-size:21px}.sidebar nav{gap:5px;display:grid}.sidebar nav button{height:46px;color:var(--muted);text-align:left;background:0 0;border:0;border-radius:13px;align-items:center;gap:13px;padding:0 14px;font-size:13px;font-weight:700;display:flex}.sidebar nav button i{text-align:center;width:24px;font-size:18px;font-style:normal}.sidebar nav button:hover,.sidebar nav button.active{color:var(--green-dark);background:var(--green-soft)}.side-tip{background:#eff6d8;border-radius:17px;margin:auto 4px 17px;padding:15px}.side-tip>span{margin-bottom:7px;display:block}.side-tip b{font-size:11px}.side-tip p{color:#64705f;margin:6px 0 0;font-size:10px;line-height:1.55}.side-profile{border:0;border-top:1px solid var(--line);text-align:left;background:0 0;align-items:center;gap:10px;padding:16px 3px 0;display:flex}.side-profile>span:nth-child(2){flex:1;display:grid}.side-profile b{font-size:12px}.side-profile small{color:var(--muted);margin-top:3px;font-size:9px}.side-profile i{color:var(--muted);font-style:normal}.avatar{color:#d7f66a;background:var(--ink);border-radius:14px;flex:none;place-items:center;width:40px;height:40px;font-size:12px;font-weight:900;display:grid;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%;display:block}.avatar.small{border-radius:12px;width:36px;height:36px}.avatar.xlarge{border-radius:27px;width:80px;height:80px;font-size:21px}.profile-photo-wrap{width:max-content;position:relative}.profile-photo-wrap .avatar.xlarge{border:3px solid var(--white);box-shadow:0 0 0 1px var(--line), 0 10px 25px #0b2a1b29}.profile-photo-edit{border:3px solid var(--white);color:#fff;background:var(--green);border-radius:12px;place-items:center;width:34px;height:34px;padding:0;display:grid;position:absolute;bottom:2px;right:-7px;box-shadow:0 6px 14px #10533140}.profile-photo-actions{justify-content:center;gap:8px;margin-top:13px;display:flex}.profile-photo-actions button{justify-content:center;align-items:center;gap:6px;display:inline-flex}.profile-photo-actions .photo-remove{color:var(--red)}.workspace{flex:1;min-width:0;margin-left:248px}.topbar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);z-index:10;background:#ffffffbd;justify-content:space-between;align-items:center;height:82px;padding:0 34px;display:flex;position:sticky;top:0}.topbar>div:first-child span{color:var(--muted);font-size:10px}.topbar h2{letter-spacing:-.3px;margin:4px 0 0;font-size:17px}.top-actions{align-items:center;gap:11px;display:flex}.icon-button,.mobile-add{border:1px solid var(--line);background:#fff;border-radius:13px;width:40px;height:40px}.mobile-add{background:var(--green);color:#fff;border:0;font-size:24px;display:none}.page-content{max-width:1320px;margin:0 auto;padding:30px 34px 70px}.page-heading{justify-content:space-between;align-items:center;margin-bottom:23px;display:flex}.page-heading h1{letter-spacing:-.8px;margin:0;font-size:27px}.page-heading p{color:var(--muted);margin:6px 0 0;font-size:11px}.outline{border:1px solid var(--line);height:40px;color:var(--ink);background:#fff;border-radius:12px;padding:0 15px;font-size:11px;font-weight:700}.outline:hover{border-color:#b9c5bc}.hero-grid{grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);gap:16px;display:grid}.balance-card{color:#fff;background:linear-gradient(130deg,#0f934e 0%,#28bd6d 62%,#52d583 100%);border-radius:24px;min-height:230px;padding:24px;position:relative;overflow:hidden;box-shadow:0 18px 34px #158f4d26}.balance-card:after{content:"";border:1px solid #ffffff24;border-radius:50%;width:240px;height:240px;position:absolute;top:-65px;right:-45px;box-shadow:0 0 0 38px #ffffff0b,0 0 0 78px #ffffff08}.balance-head{color:#dff5e8;justify-content:space-between;font-size:11px;display:flex}.balance-head i{z-index:1;font-style:normal}.balance-card>p{color:#d9f8e6;margin:0;font-size:10px}.balance-card>p b{color:#fff}.balance-details{border-top:1px solid #ffffff2f;gap:54px;margin-top:27px;padding-top:19px;display:flex}.balance-details div{gap:6px;display:grid}.balance-details span{color:#d9f2e3;font-size:10px}.insight-card{background:var(--ink);color:#fff;border-radius:24px;padding:22px;position:relative;overflow:hidden}.insight-card:after{content:"";background:#bfe84b18;border-radius:50%;width:150px;height:150px;position:absolute;top:-35px;right:-55px}.insight-title{align-items:center;gap:10px;display:flex}.insight-title>span{background:#c8ec58;border-radius:13px;place-items:center;width:39px;height:39px;display:grid}.insight-title small{color:#aebbb3;letter-spacing:1px;font-size:8px}.insight-title h3{margin:4px 0 0;font-size:17px}.insight-card>p{color:#bcc7c0;max-width:270px;margin:17px 0;font-size:11px;line-height:1.6}.insight-line{background:#34463c;border-radius:3px;height:5px}.insight-line span{background:#c4e956;border-radius:3px;height:100%;display:block}.insight-card button{color:#d2ef75;background:0 0;border:0;padding:14px 0 0;font-size:10px;font-weight:800}.quick-actions{grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0;display:grid}.quick-actions button{border:1px solid var(--line);text-align:left;background:#fff;border-radius:18px;align-items:center;gap:12px;height:74px;padding:0 15px;display:flex}.quick-actions button:hover{transform:translateY(-2px);box-shadow:0 10px 25px #1830220c}.quick-actions i{border-radius:13px;place-items:center;width:39px;height:39px;font-size:18px;font-style:normal;display:grid}.green-bg{color:var(--green-dark);background:var(--green-soft)}.amber-bg{color:#aa6810;background:#fff4df}.blue-bg{color:#315fb6;background:#eaf0fd}.quick-actions span{flex:1;display:grid}.quick-actions small{color:var(--muted);margin-top:4px;font-size:9px}.quick-actions em{color:#9aa59d;font-size:22px;font-style:normal}.dashboard-grid{grid-template-columns:minmax(0,.88fr) minmax(380px,1.12fr);gap:16px;display:grid}.panel{border:1px solid var(--line);background:#fff;border-radius:21px}.panel-title{justify-content:space-between;align-items:center;display:flex}.panel-title h3{letter-spacing:-.3px;margin:0;font-size:15px}.panel-title button{color:var(--muted);background:0 0;border:0;font-size:9px}.panel-title button span{margin-left:3px;font-size:16px}.chart-bars{align-items:flex-end;gap:7px;height:195px;padding-top:25px;display:flex}.chart-bars>div{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;height:100%;display:flex}.chart-bars span{background:linear-gradient(#22b767,#b7edcc);border-radius:7px 7px 3px 3px;width:min(23px,55%);min-height:20px}.chart-bars small{color:var(--muted);margin-top:9px;font-size:8px}.transaction-row{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:12px 0;display:flex}.transaction-row:last-child{border-bottom:0}.transaction-row>i{background:var(--cream);border-radius:12px;place-items:center;width:37px;height:37px;font-style:normal;display:grid}.transaction-row>span{flex:1;min-width:0;display:grid}.transaction-row b{white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.transaction-row small{color:var(--muted);margin-top:4px;font-size:8px}.income{color:var(--green-dark)!important}.expense{color:var(--ink)}.toolbar{justify-content:space-between;gap:14px;margin-bottom:15px;display:flex}.search{border:1px solid var(--line);background:#fff;border-radius:13px;flex:1;align-items:center;gap:9px;max-width:440px;height:43px;padding:0 14px;display:flex}.search span{color:var(--muted)}.search input{color:var(--ink);border:0;outline:0;flex:1;font-size:11px}.filters{background:#e8ece8;border-radius:13px;padding:3px;display:flex}.filters button{color:var(--muted);background:0 0;border:0;border-radius:10px;padding:0 16px;font-size:10px;font-weight:700}.filters button.active{color:var(--green-dark);background:#fff;box-shadow:0 3px 10px #1b30220e}.table-panel{overflow:hidden}.table-head,.table-row{grid-template-columns:2fr 1fr 1fr 1fr;align-items:center;padding:0 20px;display:grid}.table-head{height:43px;color:var(--muted);background:#f8faf8;font-size:9px;font-weight:700}.table-row{border-top:1px solid var(--line);min-height:65px;font-size:10px}.table-row>span{color:var(--muted)}.table-row>strong{text-align:right;font-size:11px}.tx-main{align-items:center;gap:10px;display:flex}.tx-main i{background:var(--cream);border-radius:12px;place-items:center;width:37px;height:37px;font-style:normal;display:grid}.tx-main b{font-size:11px}.empty{text-align:center;color:var(--muted);padding:60px 20px;font-size:12px}.budget-overview{background:linear-gradient(120deg, var(--ink), #254234);color:#fff;border-radius:24px;justify-content:space-between;align-items:center;min-height:180px;margin-bottom:18px;padding:26px;display:flex}.budget-overview span{color:#c2cdc6;font-size:10px}.budget-overview h2{margin:8px 0;font-size:27px}.budget-overview p{color:#aebcb3;margin:0;font-size:10px}.budget-ring{border:12px solid #bfe555;border-left-color:#334d40;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:105px;height:105px;display:flex;transform:rotate(15deg)}.budget-ring>*{transform:rotate(-15deg)}.budget-ring span{color:#fff;font-size:20px;font-weight:900}.budget-ring small{color:#aebbb2;font-size:8px}.budget-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.budget-create{grid-template-columns:minmax(190px,1fr) minmax(160px,.8fr) minmax(160px,.8fr) auto;align-items:center;gap:10px;margin-bottom:14px;padding:17px;display:grid}.budget-create h3{margin:0;font-size:13px}.budget-create p{color:var(--muted);margin:5px 0 0;font-size:9px}.budget-create input,.budget-editor input{border:1px solid var(--line);background:var(--white);min-width:0;height:39px;color:var(--ink);border-radius:10px;padding:0 11px;font-size:10px}.budget-create>button{height:39px;padding:0 17px}.budget-item{padding:18px}.budget-item-head{align-items:center;gap:12px;display:flex}.budget-item-head>i{background:var(--cream);border-radius:14px;place-items:center;width:44px;height:44px;font-size:19px;font-style:normal;display:grid}.budget-item-head>div{flex:1}.budget-item h3{margin:0;font-size:13px}.budget-item-head span{color:var(--muted);margin-top:5px;font-size:9px;display:block}.budget-item-head>b{font-size:12px}.progress{background:#e8ece9;border-radius:5px;height:7px;margin:17px 0}.progress span{background:linear-gradient(90deg, var(--green), #83dbac);border-radius:5px;height:100%;display:block}.budget-editor{grid-template-columns:1fr 1fr;gap:9px;display:grid}.budget-editor label{color:var(--muted);gap:6px;font-size:9px;display:grid}.budget-actions{grid-column:1/-1;justify-content:flex-end;gap:7px;display:flex}.budget-actions button{border-radius:9px;min-width:78px;height:34px;font-size:9px;font-weight:800}.budget-actions button:disabled{cursor:default;opacity:.45;transform:none}.report-stats{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:16px;display:grid}.stat{justify-content:space-between;align-items:center;padding:18px;display:flex}.stat span{color:var(--muted);font-size:9px}.stat h3{margin:7px 0 5px;font-size:18px}.stat small{font-size:8px}.green-text{color:var(--green-dark)}.red{color:var(--red)}.stat>i{border-radius:14px;place-items:center;width:43px;height:43px;font-size:18px;font-style:normal;display:grid}.income-icon{background:var(--green-soft);color:var(--green-dark)}.expense-icon{color:var(--red);background:#fff0ef}.saving-icon{color:#607d0b;background:#eff6d9}.dashboard-grid.reports{grid-template-columns:1.5fr .7fr}.area-chart{height:220px;margin-top:20px;position:relative}.area-chart svg{width:100%;height:100%;position:absolute;inset:0}.grid-lines{flex-direction:column;justify-content:space-between;display:flex;position:absolute;inset:0}.grid-lines i{border-top:1px dashed var(--line)}.category-panel{grid-template-columns:120px 1fr;align-content:start;column-gap:16px;display:grid}.category-panel .panel-title{grid-column:1/-1}.donut{background:conic-gradient(var(--green) 0 42%, var(--amber) 42% 72%, var(--blue) 72% 91%, #dce3de 91%);border-radius:50%;place-items:center;width:112px;height:112px;margin-top:25px;display:grid}.donut>div{text-align:center;background:#fff;border-radius:50%;place-content:center;width:70px;height:70px;display:grid}.donut strong{font-size:17px}.donut small{color:var(--muted);margin-top:2px;font-size:8px}.category-list{margin-top:24px}.category-list>div{align-items:center;gap:7px;padding:6px 0;display:flex}.category-list span{color:var(--muted);flex:1;font-size:9px}.category-list b{font-size:9px}.dot{background:var(--green);border-radius:50%;width:7px;height:7px}.dot.d1{background:var(--amber)}.dot.d2{background:var(--blue)}.dot.d3{background:#dce3de}.profile-grid{grid-template-columns:.65fr 1.35fr;gap:15px;margin-bottom:15px;display:grid}.profile-card{flex-direction:column;justify-content:center;align-items:center;min-height:260px;display:flex}.profile-card h2{margin:14px 0 5px;font-size:19px}.profile-card p{color:var(--muted);margin:0;font-size:10px}.profile-name-editor{width:min(100%,270px);margin-top:14px}.profile-name-editor label{color:var(--muted);text-align:left;margin-bottom:6px;font-size:8px;font-weight:800;display:block}.profile-name-editor>div{gap:7px;display:flex}.profile-name-editor input{border:1px solid var(--line);background:var(--white);min-width:0;height:38px;color:var(--ink);border-radius:10px;flex:1;padding:0 10px;font-size:10px}.profile-name-editor button{height:38px;padding:0 12px;font-size:9px}.profile-name-editor button:disabled{cursor:default;opacity:.45}.local-badge{background:var(--green-soft);color:var(--green-dark);letter-spacing:1px;border-radius:9px;margin-top:13px;padding:6px 10px;font-size:8px;font-weight:900}.data-card{grid-template-columns:50px 1fr;align-items:start;column-gap:15px;padding:24px;display:grid}.data-icon{background:#eff6d8;border-radius:16px;place-items:center;width:50px;height:50px;font-size:21px;display:grid}.data-card h3{margin:3px 0 8px;font-size:15px}.data-card p{color:var(--muted);margin:0;font-size:10px;line-height:1.6}.data-actions{grid-column:2;gap:9px;margin-top:24px;display:flex}.data-actions button{height:42px;padding:0 15px;font-size:10px}.settings-list{padding:0 18px}.settings-list button{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;align-items:center;gap:12px;width:100%;min-height:62px;display:flex}.settings-list button:last-child{border-bottom:0}.settings-list button>span{width:34px;font-size:16px}.settings-list button>div{flex:1;display:grid}.settings-list b{font-size:11px}.settings-list small{color:var(--muted);margin-top:4px;font-size:9px}.settings-list i{color:var(--muted);font-size:20px;font-style:normal}.logout{width:100%;height:48px;color:var(--red);background:#fff1f0;border:1px solid #ffd6d3;border-radius:14px;margin-top:15px;font-size:11px;font-weight:800}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#0e2118a3;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.modal{background:var(--cream);border-radius:26px;width:min(480px,100%);max-height:95vh;padding:24px;overflow:auto;box-shadow:0 30px 80px #07130c55}.modal-handle{display:none}.modal header{justify-content:space-between;align-items:start;margin-bottom:18px;display:flex}.modal header span{letter-spacing:1.4px;color:var(--green-dark);font-size:8px;font-weight:900}.modal header h2{margin:5px 0 0;font-size:22px}.modal header button{color:var(--muted);background:0 0;border:0;font-size:27px}.type-toggle{background:#e6ebe7;border-radius:13px;margin-bottom:18px;padding:4px;display:flex}.type-toggle button{height:39px;color:var(--muted);background:0 0;border:0;border-radius:10px;flex:1;font-size:10px;font-weight:800}.type-toggle button.active{color:var(--green-dark);background:#fff;box-shadow:0 3px 9px #19322112}.modal>label{margin:14px 0 7px;font-size:9px;font-weight:800;display:block}.amount-input{border:1px solid var(--line);background:#fff;border-radius:15px;align-items:center;gap:9px;height:61px;padding:0 15px;display:flex}.amount-input span{color:var(--green-dark);font-weight:900}.amount-input input{color:var(--ink);border:0;outline:0;flex:1;min-width:0;font-size:25px;font-weight:900}.category-chips{flex-wrap:wrap;gap:7px;display:flex}.category-chips button{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:11px;padding:9px 11px;font-size:9px;font-weight:700}.category-chips button.active{border-color:var(--green);background:var(--green-soft);color:var(--green-dark)}.text-input{border:1px solid var(--line);width:100%;height:46px;color:var(--ink);background:#fff;border-radius:13px;outline:0;padding:0 13px;font-size:10px}.modal .save{margin-top:20px}.toast{z-index:150;background:var(--ink);color:#fff;border-radius:13px;align-items:center;gap:8px;padding:12px 16px;font-size:10px;font-weight:700;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #10201840}.toast span{color:#d4ef77}.category-manager{margin-bottom:15px;padding:22px}.category-manager-head h3{margin:0;font-size:15px}.category-manager-head p{color:var(--muted);margin:6px 0 0;font-size:10px}.category-create{grid-template-columns:220px 62px 1fr auto;align-items:center;gap:9px;margin:18px 0;display:grid}.category-create .type-toggle{margin:0}.category-create select,.category-create input{border:1px solid var(--line);height:42px;color:var(--ink);background:#fff;border-radius:12px;outline:0;padding:0 11px;font-size:10px}.category-create select{font-size:18px}.category-create .primary{height:42px;padding:0 16px}.category-groups{grid-template-columns:1fr 1fr;gap:18px;display:grid}.category-groups h4{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;font-size:10px}.category-list-edit{flex-wrap:wrap;gap:7px;display:flex}.category-list-edit>div{background:var(--cream);border:1px solid var(--line);border-radius:11px;align-items:center;gap:7px;padding:8px 9px;display:flex}.category-list-edit b{font-size:9px}.category-list-edit button{color:#9ca69f;background:0 0;border:0;font-size:16px;line-height:1}.scan-box{background:#effaf3;border:1px dashed #80b897;border-radius:15px;align-items:center;gap:12px;margin-bottom:15px;padding:13px;display:flex}.scan-box>div{flex:1;display:grid}.scan-box b{font-size:10px}.scan-box small{color:var(--muted);margin-top:4px;font-size:8px;line-height:1.5}.scan-box button{background:#fff;height:36px;padding:0 12px;font-size:9px}.scan-actions{grid-template-columns:repeat(2,auto);gap:7px;flex:none!important;display:flex!important}.receipt-preview{border:1px solid var(--line);background:#fff;border-radius:13px;align-items:center;gap:11px;margin:-4px 0 14px;padding:9px;display:flex}.receipt-preview img{object-fit:cover;border-radius:9px;width:78px;height:78px}.receipt-preview span{color:var(--muted);font-size:9px}.ocr-result{border:1px solid var(--line);background:#fff;border-radius:11px;margin-top:12px;padding:10px}.ocr-result summary{cursor:pointer;color:var(--muted);font-size:9px;font-weight:700}.ocr-result pre{white-space:pre-wrap;color:#5a665f;max-height:120px;font:9px/1.5 monospace;overflow:auto}.confirm-note{color:#735719;background:#fff8df;border-radius:10px;margin:12px 0 0;padding:9px 11px;font-size:8px;line-height:1.5}.sync-warning{color:#735719;background:#fff8df;border:1px solid #f2c75c;border-radius:12px;margin:16px 24px 0;padding:12px 15px;font-size:10px;font-weight:700}.login-error{color:var(--red);background:#fff0ef;border-radius:11px;margin-top:12px;padding:10px 12px;font-size:10px;font-weight:700}.primary:disabled{cursor:not-allowed;opacity:.65}.notification-button{position:relative}.notification-button b{background:var(--red);color:#fff;border-radius:9px;place-items:center;min-width:17px;height:17px;padding:0 4px;font-size:8px;display:grid;position:absolute;top:-5px;right:-5px}.todo-reminder{text-align:left;width:100%;color:var(--ink);background:#f0faf4;border:1px solid #cfead9;border-radius:15px;align-items:center;gap:12px;margin:-2px 0 18px;padding:13px 16px;display:flex}.todo-reminder>span{background:var(--green);color:#fff;border-radius:11px;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.todo-reminder>div{flex:1;display:grid}.todo-reminder b{font-size:10px}.todo-reminder small{color:var(--muted);margin-top:3px;font-size:8px}.todo-reminder i{color:var(--muted);font-size:18px;font-style:normal}.panel-title>small{color:var(--muted);font-size:9px}.report-actions{gap:8px;display:flex}.month-picker,.date-picker{border:1px solid var(--line);height:42px;color:var(--ink);background:#fff;border-radius:12px;padding:0 13px;font-size:10px}.report-summary{padding:20px}.report-meter{background:#e8ece9;border-radius:8px;height:10px;margin:36px 0 14px;overflow:hidden}.report-meter span{background:linear-gradient(90deg, var(--green), var(--amber));border-radius:8px;height:100%;display:block}.report-summary>p{min-height:40px;color:var(--muted);font-size:10px;line-height:1.6}.report-summary>.wide{margin-top:23px}.all-time-note{color:var(--muted);margin-top:14px;font-size:9px;display:block}.todo-panel{padding:20px}.todo-create{grid-template-columns:1fr 110px auto;gap:9px;display:grid}.todo-create input{border:1px solid var(--line);border-radius:13px;outline:0;flex:1;height:46px;padding:0 14px;font-size:11px}.todo-create button{min-width:95px;padding:0 17px}.todo-time-input{min-width:0}.todo-progress{grid-template-columns:auto 1fr;align-items:center;gap:14px;margin:19px 0 10px;display:grid}.todo-progress b{font-size:12px}.todo-progress span{color:var(--muted);font-size:9px}.todo-progress>div:last-child{background:#e7ece8;border-radius:5px;height:7px;overflow:hidden}.todo-progress>div:last-child span{background:var(--green);border-radius:5px;height:100%;display:block}.todo-list>div:not(.empty){border-top:1px solid var(--line);align-items:center;gap:12px;min-height:55px;display:flex}.todo-list>div.dragging{opacity:.45;background:var(--green-soft)}.todo-drag{color:var(--muted);cursor:grab;letter-spacing:-3px;flex:none!important;font-size:14px!important}.todo-order-actions{gap:3px;display:flex}.todo-order-actions button{border:1px solid var(--line);background:var(--white);width:27px;height:27px;color:var(--ink);border-radius:8px}.todo-order-actions button:disabled{cursor:default;opacity:.3}.todo-list>div.done>span{color:#9aa39d;text-decoration:line-through}.todo-check{color:#fff;background:#fff;border:2px solid #b7c3bb;border-radius:8px;width:24px;height:24px}.done .todo-check{border-color:var(--green);background:var(--green)}.todo-list>div>span{flex:1;font-size:11px}.todo-delete{color:#a4ada7;background:0 0;border:0;font-size:19px}.backup-help{background:var(--cream);color:#637068;border-radius:9px;margin-top:9px;padding:8px 10px;font-size:8px;line-height:1.5;display:block}.forgot-password{color:var(--green-dark);background:0 0;border:0;margin:8px 0 0 auto;padding:0;font-size:9px;font-weight:800;display:block}.forgot-password:disabled{opacity:.6}.login-notice{background:var(--green-soft);color:var(--green-dark);border-radius:11px;margin-top:12px;padding:10px 12px;font-size:9px;font-weight:700;line-height:1.5}.password-link{background:var(--green-soft);color:var(--green-dark);border:1px solid #bfe1cc;border-radius:10px;margin-top:14px;padding:8px 11px;font-size:9px;font-weight:800}.app-shell.dark{--ink:#edf5f0;--muted:#9caaa1;--cream:#101914;--white:#18231d;--line:#2c3b32;--green-soft:#173526;background:var(--cream)}.app-shell.dark .workspace,.app-shell.dark .topbar,.app-shell.dark .panel,.app-shell.dark .quick-actions button,.app-shell.dark .table-panel,.app-shell.dark .search,.app-shell.dark input,.app-shell.dark select,.app-shell.dark textarea{background:var(--white);color:var(--ink)}.app-shell.dark .sidebar{border-color:var(--line);background:#121d17}.app-shell.dark .brand{color:#f4faf6}.app-shell.dark .brand-name small{color:#e0c36d}.app-shell.dark .insight-card,.app-shell.dark .budget-overview{color:#f7fbf8;background:linear-gradient(125deg,#0a1510,#193429);border:1px solid #365245}.app-shell.dark .insight-title small,.app-shell.dark .insight-card>p,.app-shell.dark .budget-overview span,.app-shell.dark .budget-overview p,.app-shell.dark .budget-ring small{color:#c4d1c9}.app-shell.dark .insight-title h3,.app-shell.dark .budget-overview h2,.app-shell.dark .budget-ring span{color:#fff}.app-shell.dark .insight-line,.app-shell.dark .progress{background:#32453a}.app-shell.dark .budget-item-head>i,.app-shell.dark .transaction-row>i,.app-shell.dark .tx-main i{background:#243229}.app-shell.dark .budget-warning{color:#ffe49a;background:#463b1e}.app-shell.dark .side-tip{background:#26331f}.app-shell.dark .side-tip p{color:#b5c1b8}.app-shell.dark .filters{background:#26332b}.app-shell.dark .filters button.active{color:#8fe0b1;background:#35443b}.app-shell.dark .amber-bg{color:#ffd588;background:#43351d}.app-shell.dark .blue-bg{color:#a9c6ff;background:#223452}.app-shell.dark .outline,.app-shell.dark .row-actions button,.app-shell.dark .todo-order-actions button{color:#f1f8f3;background:#223129;border-color:#496052}.app-shell.dark .outline:hover,.app-shell.dark .row-actions button:hover,.app-shell.dark .todo-order-actions button:hover{background:#2c4035;border-color:#80a48f}.app-shell.dark .todo-delete,.app-shell.dark .category-list-edit button,.app-shell.dark .wallet-list button,.app-shell.dark .goal-grid button,.app-shell.dark .simple-records>div>button:last-child{color:#ffb2b2}.app-shell.dark .delete-account{color:#ffb2b2;background:#351f1f;border:1px solid #6f3d3d;border-radius:12px}.app-shell.dark .logout{color:#f1f8f3;background:#223129;border-color:#496052}.app-shell.dark .backup-help{color:#c3d0c8;background:#223129}.app-shell.dark .data-icon{background:#314127}.app-shell.dark .table-head{background:#202c25}.app-shell.dark .modal{background:var(--cream)}.app-shell.dark .modal input,.app-shell.dark .modal select,.app-shell.dark .modal textarea{background:var(--white);color:var(--ink)}.app-shell.dark .scan-box{background:#173526;border-color:#37694d}.app-shell.dark .scan-box button{background:#223129}.app-shell.dark .receipt-preview,.app-shell.dark .ocr-result{color:var(--ink);background:#18231d}.items-input{resize:vertical;border:1px solid var(--line);width:100%;min-height:95px;color:var(--ink);background:#fff;border-radius:13px;padding:11px;font-size:9px;line-height:1.5}.transaction-toolbar{flex-wrap:wrap}.transaction-toolbar>input,.transaction-toolbar>select{border:1px solid var(--line);height:43px;color:var(--ink);background:#fff;border-radius:12px;padding:0 10px;font-size:9px}.table-head,.table-row{grid-template-columns:2fr 1fr 1fr 1fr 70px}.tx-main>span{display:grid}.tx-main small{color:var(--muted);margin-top:3px;font-size:8px}.row-actions{justify-content:flex-end;gap:5px;display:flex}.row-actions button{border:1px solid var(--line);width:28px;height:28px;color:var(--muted);background:#fff;border-radius:8px}.todo-layout{grid-template-columns:1.35fr .65fr;gap:15px;display:grid}.repeat-check{color:var(--muted);align-items:center;gap:8px;margin:11px 0 0;font-size:9px;display:flex}.repeat-check input{accent-color:var(--green)}.todo-list>div>span{display:grid}.todo-list>div>span small{color:var(--green-dark);margin-top:3px;font-size:7px}.habit-chart{padding:20px}.habit-chart h3{margin:0;font-size:14px}.habit-chart>p{color:var(--muted);margin:6px 0 20px;font-size:9px}.habit-chart>div{align-items:end;gap:8px;height:220px;display:flex}.habit-chart>div>span{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;height:100%;display:flex}.habit-chart i{background:linear-gradient(var(--green), #9fe4bd);border-radius:7px 7px 3px 3px;width:70%;min-height:4px}.habit-chart b{margin-top:7px;font-size:8px}.habit-chart small{color:var(--muted);margin-top:4px;font-size:7px}.feature-stack{gap:13px;display:grid}.feature-section{overflow:hidden}.feature-section summary{cursor:pointer;align-items:center;gap:12px;padding:17px 19px;list-style:none;display:flex}.feature-section summary>span{background:var(--cream);border-radius:12px;place-items:center;width:38px;height:38px;display:grid}.feature-section summary>div{display:grid}.feature-section summary b{font-size:12px}.feature-section summary small{color:var(--muted);margin-top:4px;font-size:8px}.feature-body{padding:0 19px 19px}.compact-form{grid-template-columns:1fr auto;gap:8px;display:grid}.compact-form.four{grid-template-columns:1fr 1fr 1fr auto}.compact-form input,.compact-form select,.transfer-form input,.transfer-form select{border:1px solid var(--line);height:41px;color:var(--ink);background:#fff;border-radius:11px;padding:0 10px;font-size:9px}.compact-form button{padding:0 14px}.wallet-list,.goal-grid{grid-template-columns:repeat(3,1fr);gap:9px;margin-top:12px;display:grid}.wallet-list>div{border:1px solid var(--line);background:var(--cream);border-radius:13px;align-items:center;gap:9px;padding:12px;display:flex}.wallet-list>div>div{flex:1;display:grid}.wallet-list b,.goal-grid b{font-size:10px}.wallet-list small,.goal-grid span{color:var(--muted);margin-top:4px;font-size:8px}.wallet-list button,.goal-grid button,.simple-records>div>button:last-child{color:var(--muted);background:0 0;border:0}.transfer-form{grid-template-columns:1fr 1fr 1fr auto;gap:8px;margin-top:11px;display:grid}.goal-grid>article{border:1px solid var(--line);border-radius:13px;padding:13px}.goal-grid article>div:first-child,.goal-grid footer{justify-content:space-between;align-items:center;display:flex}.mini-progress{background:var(--line);border-radius:4px;height:6px;margin:10px 0}.mini-progress i{background:var(--green);border-radius:4px;height:100%;display:block}.goal-grid footer small{color:var(--muted);font-size:7px}.goal-grid footer button{color:var(--green-dark);font-size:9px;font-weight:800}.simple-records{margin-top:12px}.simple-records>div{border-top:1px solid var(--line);align-items:center;gap:10px;min-height:54px;display:flex}.simple-records>div>span{flex:1;display:grid}.simple-records b{font-size:10px}.simple-records small{color:var(--muted);margin-top:3px;font-size:8px}.simple-records strong{font-size:10px}.simple-records .settled{opacity:.55}.record-check{color:#fff;background:#fff;border:2px solid #aebbb2;border-radius:7px;width:23px;height:23px}.record-check.active,.settled .record-check{border-color:var(--green);background:var(--green)}.preference-panel{margin-bottom:15px;padding:0 18px}.preference-panel>button{width:100%;min-height:58px;color:var(--ink);text-align:left;background:0 0;border:0;align-items:center;gap:12px;display:flex}.preference-panel>button>div{display:grid}.preference-panel b{font-size:10px}.preference-panel small{color:var(--muted);margin-top:4px;font-size:8px}.delete-account{width:100%;height:43px;color:var(--red);background:0 0;border:0;margin-top:9px;font-size:9px;font-weight:800}.mobile-nav{display:none}.login-page{background:#fff;grid-template-columns:1.05fr .95fr;min-height:100vh;display:grid}.login-visual{color:#fff;background:radial-gradient(circle at 70% 70%,#3aca7d 0,#139754 35%,#0c6138 100%);flex-direction:column;padding:40px 55px;display:flex;position:relative;overflow:hidden}.login-visual:before,.login-visual:after{content:"";border:1px solid #ffffff1f;border-radius:50%;width:500px;height:500px;position:absolute;bottom:-190px;right:-170px;box-shadow:0 0 0 70px #ffffff08,0 0 0 140px #ffffff06}.brand.light .logo-mark{background:#12243a}.brand.light .brand-name{color:#fff}.brand.light .brand-name small{color:#f0d27b}.login-copy{z-index:1;max-width:560px;margin:auto 0;position:relative}.eyebrow{letter-spacing:2px;color:#d3f57b;font-size:9px;font-weight:900}.eyebrow.green{color:var(--green-dark)}.login-copy h1{letter-spacing:-2px;margin:18px 0;font-size:48px;line-height:1.05}.login-copy>p{color:#d8eee2;max-width:450px;font-size:14px;line-height:1.7}.floating-stat{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff14;border:1px solid #ffffff28;border-radius:17px;align-items:center;gap:12px;width:240px;margin-top:38px;padding:14px;display:flex}.floating-stat>span{color:#24440f;background:#d1f477;border-radius:12px;place-items:center;width:39px;height:39px;display:grid}.floating-stat div{display:grid}.floating-stat small{color:#cde3d6;font-size:8px}.floating-stat strong{margin-top:4px;font-size:13px}.login-form{place-items:center;padding:35px;display:grid}.form-wrap{width:min(390px,100%)}.form-wrap h2{letter-spacing:-.9px;margin:10px 0;font-size:30px}.form-wrap>p{color:var(--muted);margin-bottom:25px;font-size:11px;line-height:1.6}.form-wrap>label,.saved-users>label{margin:13px 0 7px;font-size:9px;font-weight:800;display:block}.form-wrap>input{border:1px solid var(--line);width:100%;height:49px;color:var(--ink);border-radius:14px;outline:0;padding:0 14px;font-size:11px}.form-wrap>input:focus{border-color:var(--green);box-shadow:0 0 0 3px var(--green-soft)}.form-wrap .primary{margin-top:18px}.privacy{text-align:center;color:#9ca69f;margin-top:15px;font-size:8px;display:block}.saved-users{background:var(--cream);border-radius:15px;margin-bottom:17px;padding:11px}.saved-users>label{margin:0 0 8px}.saved-users button{text-align:left;background:#fff;border:0;border-radius:12px;align-items:center;gap:9px;width:100%;padding:8px;display:flex}.saved-users button span:nth-child(2){flex:1;display:grid}.saved-users b{font-size:10px}.saved-users small{color:var(--muted);margin-top:3px;font-size:8px}.saved-users i{color:var(--muted);font-size:18px;font-style:normal}.mobile-brand{display:none}@media (width<=1050px){.sidebar{width:220px}.workspace{margin-left:220px}.hero-grid{grid-template-columns:1fr}.insight-card{min-height:195px}.dashboard-grid,.dashboard-grid.reports{grid-template-columns:1fr}.category-panel{grid-template-columns:140px 1fr}.quick-actions{grid-template-columns:1fr}.quick-actions button{height:68px}.report-stats{grid-template-columns:1fr 1fr}.profile-grid{grid-template-columns:1fr}}@media (width<=720px){body{padding-bottom:82px}.sidebar{display:none}.workspace{margin-left:0}.topbar{height:68px;padding:0 17px}.topbar>div:first-child span{display:none}.topbar h2{font-size:15px}.icon-button{display:none}.mobile-add{display:block}.top-actions>.avatar{display:none}.page-content{padding:21px 15px 35px}.page-heading{align-items:flex-start}.page-heading h1{font-size:22px}.page-heading .outline{display:none}.hero-grid{display:block}.balance-card{min-height:220px;padding:21px}.balance-card h2{font-size:27px}.balance-details{gap:35px}.insight-card{min-height:0;margin-top:13px}.quick-actions{grid-template-columns:1fr 1fr;gap:10px}.quick-actions button{height:66px;padding:0 12px}.quick-actions button:last-child{grid-column:1/-1}.quick-actions small{display:none}.dashboard-grid{display:block}.dashboard-grid>.panel{margin-bottom:13px}.cashflow{padding-bottom:10px}.chart-bars{height:175px}.mobile-nav{z-index:50;border:1px solid var(--line);background:#fff;border-radius:23px;align-items:center;height:69px;padding:0 5px;display:flex;position:fixed;bottom:8px;left:9px;right:9px;box-shadow:0 10px 35px #12281b28}.mobile-nav button{color:#96a099;background:0 0;border:0;flex:1;place-items:center;gap:3px;display:grid}.mobile-nav button i{height:21px;font-size:18px;font-style:normal}.mobile-nav small{font-size:7px;font-weight:800}.mobile-nav button.active{color:var(--green-dark)}.mobile-nav .mobile-fab span{border:4px solid var(--cream);color:#fff;background:var(--green);border-radius:17px;place-items:center;width:47px;height:47px;margin-top:-24px;font-size:25px;display:grid;box-shadow:0 7px 16px #199f583b}.toolbar{display:block}.search{max-width:none}.filters{height:40px;margin-top:10px}.filters button{flex:1}.table-head{display:none}.table-row{grid-template-columns:1fr auto;padding:12px 15px}.table-row>span{display:none}.table-row>strong{padding-left:10px}.budget-overview{min-height:170px;padding:20px}.budget-overview h2{font-size:22px}.budget-ring{border-width:10px;width:83px;height:83px}.budget-grid,.report-stats,.budget-create{grid-template-columns:1fr}.budget-create>button{width:100%}.budget-editor{grid-template-columns:1fr}.budget-actions{grid-column:1}.budget-actions button{flex:1}.report-stats{gap:10px}.dashboard-grid.reports{display:block}.category-panel{grid-template-columns:110px 1fr}.profile-grid{display:block}.profile-grid>.panel{margin-bottom:13px}.data-card{display:block}.data-icon{margin-bottom:14px}.data-actions{display:grid}.category-create{grid-template-columns:60px 1fr}.category-create .type-toggle,.category-create .primary{grid-column:1/-1}.category-groups{grid-template-columns:1fr}.modal-backdrop{align-items:end;padding:0}.modal{border-radius:27px 27px 0 0;width:100%;padding:17px 18px 25px}.modal-handle{background:#c9d0cb;border-radius:4px;width:40px;height:4px;margin:0 auto 12px;display:block}.scan-box{align-items:flex-start;display:grid}.scan-actions{grid-template-columns:1fr 1fr;width:100%;display:grid!important}.toast{width:max-content;max-width:90%;bottom:91px}.login-page{background:var(--cream);display:block}.login-visual{display:none}.login-form{min-height:100vh;padding:25px 20px}.mobile-brand{margin-bottom:55px;display:flex}.form-wrap h2{font-size:27px}}html,body,#root,.app-shell,.workspace,.page-content{min-width:0;max-width:100%}body{overflow-x:hidden}button,input,select,textarea{touch-action:manipulation}button svg,.sync-warning svg,.report-actions svg{stroke-width:2px;flex:none;width:17px;height:17px}.tx-main i svg,.transaction-row i svg,.budget-item-head i svg,.category-list-edit span svg,.category-chips button svg,.budget-warning svg,.install-app-card span svg{stroke-width:2px;width:18px;height:18px}.category-chips button{align-items:center;gap:6px;display:inline-flex}.planning-page .feature-section>summary>svg{box-sizing:content-box;width:22px;height:22px;color:var(--green);background:color-mix(in srgb, var(--green) 12%, transparent);border-radius:12px;padding:9px}.planning-page .feature-body{overflow:visible}.finance-error{color:#a72828;background:#fff3f3;border:1px solid #f0b6b6;border-radius:12px;margin:0 0 14px;padding:12px 14px;font-size:13px}.finance-form-grid,.compact-form.two{grid-template-columns:repeat(4,minmax(150px,1fr));align-items:stretch;gap:10px;margin-bottom:16px;display:grid}.compact-form.two{grid-template-columns:minmax(220px,1fr) auto}.goal-create,.debt-create,.recurring-create{grid-template-columns:repeat(auto-fit,minmax(175px,1fr))}.finance-form-grid>input,.finance-form-grid>select,.compact-form.two>input,.money-input,.goal-entry>select,.debt-payment>select{border:1px solid var(--line);background:var(--white);min-width:0;min-height:46px;color:var(--ink);font:inherit;border-radius:11px;padding:0 12px}.money-input{align-items:center;gap:7px;padding:0 12px;display:flex}.money-input>span{color:var(--muted);font-weight:700}.money-input>input{width:100%;min-width:0;color:inherit;font:inherit;background:0 0;border:0;outline:0}.planning-page button{justify-content:center;align-items:center;gap:7px;min-height:42px;display:inline-flex}.planning-page button:disabled{cursor:wait;opacity:.55}.professional-list>div,.debt-list>article,.goal-grid>article{border:1px solid var(--line);background:var(--white);border-radius:14px;min-width:0;box-shadow:0 5px 16px #143d260d}.professional-list>div{align-items:center;gap:11px;padding:12px;display:flex}.professional-list>div>svg{width:20px;height:20px;color:var(--green);flex:none}.professional-list span,.wallet-list>div>div:nth-child(2){flex:1;min-width:0}.professional-list b,.professional-list small{overflow-wrap:anywhere;display:block}.order-buttons{gap:4px;display:flex}.order-buttons button,.icon-danger{border-radius:10px;width:38px;min-width:38px;padding:0}.icon-danger{color:#b73333!important}.record-heading{align-items:center;gap:10px;display:flex}.record-heading>div{flex:1;min-width:0}.record-heading b,.record-heading small{overflow-wrap:anywhere;display:block}.record-heading strong{white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.goal-entry,.debt-payment{grid-template-columns:minmax(130px,1fr) minmax(150px,1fr);gap:8px;margin-top:12px;display:grid}.debt-payment{grid-template-columns:repeat(3,minmax(150px,1fr))}.goal-actions{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:9px;display:grid}.debt-list{gap:12px;display:grid}.debt-list>article{padding:14px}.debt-list article.settled{opacity:.72}.pay-debt{width:100%;margin-top:9px}.recurring-list{gap:9px;display:grid}.finance-position{grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;margin-bottom:16px;padding:0;display:grid;overflow:hidden}.finance-position>div{background:var(--white);padding:16px}.finance-position span,.finance-position strong,.finance-position small{display:block}.finance-position span,.finance-position small{color:var(--muted);font-size:11px}.finance-position strong{margin-top:5px;font-size:16px}.finance-position .net-worth{background:color-mix(in srgb, var(--green) 9%, var(--white))}.movement-report{margin-top:16px}.movement-report>p{color:var(--muted);font-size:12px}.movement-report>div{gap:6px;margin-top:12px;display:grid}.movement-report>div>span{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:9px 0;display:flex}.sync-warning{align-items:center;gap:8px;display:flex}.modal-backdrop{overscroll-behavior:contain}.modal{overscroll-behavior:contain;max-height:min(92dvh,820px);overflow-y:auto}@media (width<=900px){.finance-position{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-position .net-worth{grid-column:1/-1}}@media (width<=720px){input,select,textarea,.money-input>input,.text-input,.amount-input input{font-size:16px!important}.page-content{padding-inline:12px;overflow-x:hidden}.finance-form-grid,.compact-form.two,.goal-create,.debt-create,.recurring-create,.goal-entry,.debt-payment{grid-template-columns:1fr}.finance-form-grid>*,.compact-form.two>*,.goal-entry>*,.debt-payment>*{box-sizing:border-box;width:100%;max-width:100%}.goal-grid,.goal-actions{grid-template-columns:1fr}.goal-actions button,.pay-debt,.finance-form-grid button,.compact-form.two button{min-height:48px}.professional-list>div{flex-wrap:wrap}.professional-list>div>span{flex-basis:calc(100% - 42px)}.recurring-list>div>strong{margin-left:31px;margin-right:auto}.record-heading{flex-wrap:wrap}.record-heading>div{flex-basis:calc(100% - 50px)}.finance-position{grid-template-columns:1fr 1fr}.receipt-modal{width:100%;max-width:100%;max-height:94dvh;transform:none!important}}:root{--ink:#10251b;--muted:#66786e;--green:#148653;--green-dark:#0b6f43;--green-soft:#e7f5ed;--cream:#f3f6f4;--white:#fff;--line:#dce5df;--amber:#d99a32;--blue:#4778d0;--red:#d74f55;--gold:#b89036;--chart-rest:#dfe8e2;--surface-elevated:#f8faf9;--shadow-soft:0 10px 30px #11302112;--shadow-card:0 18px 44px #0d351f1a}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5}button,input,select,textarea{font-family:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #20b8693d}.app-shell{background:radial-gradient(circle at 78% 0%, #cdebdb73, transparent 25rem), var(--cream)}.sidebar{border-right-color:var(--line);width:236px;padding:22px 16px 18px;box-shadow:8px 0 34px #15362608}.sidebar nav{gap:8px}.sidebar nav button{border-radius:13px;height:48px;font-size:13px;font-weight:750}.sidebar nav button i{place-items:center;display:grid}.sidebar nav button.active{box-shadow:inset 3px 0 var(--green)}.side-tip{background:#fbf7e9;border:1px solid #e4d8ae}.side-tip>span{color:var(--gold)}.topbar{background:#ffffffd1;border-bottom-color:#dce5dfd9;height:76px;padding:0 32px}.topbar>div:first-child span{font-size:11px}.topbar h2{font-size:18px}.icon-button,.mobile-add{border-radius:13px;width:42px;height:42px}.page-content{max-width:1240px;padding:30px 32px 80px}.page-heading{margin-bottom:22px}.page-heading h1{letter-spacing:-1px;font-size:clamp(24px,2.2vw,30px)}.page-heading p{margin-top:7px;font-size:12px}.primary,.outline{border-radius:12px;min-height:42px;font-size:12px}.primary{background:linear-gradient(135deg,#0d7a49,#1b9b60);box-shadow:0 8px 20px #13845138}.outline{border-color:var(--line);background:var(--white)}.panel,.feature-access,.quick-actions button{border-color:var(--line);box-shadow:var(--shadow-soft)}.panel{border-radius:18px}.hero-grid{grid-template-columns:minmax(0,1.55fr) minmax(290px,.7fr);gap:18px}.balance-card{background:linear-gradient(135deg,#0a5b37f5,#139156f2),#0e7144;border-radius:22px;min-height:238px;padding:26px;box-shadow:0 22px 50px #085c343b}.balance-card:after{border-color:#ffffff1c;top:-95px;right:-85px;box-shadow:0 0 0 44px #ffffff08,0 0 0 92px #ffffff05}.balance-head{align-items:center;font-size:12px;font-weight:650}.balance-head button{color:#fff;z-index:2;background:#ffffff1a;border:1px solid #ffffff2e;border-radius:12px;place-items:center;width:38px;height:38px;display:grid}.balance-card h2{letter-spacing:-1.4px;margin:18px 0 6px;font-size:clamp(29px,3vw,38px)}.balance-card>p{font-size:11px}.balance-details{gap:62px;margin-top:25px;padding-top:18px}.balance-details span{font-size:10px}.balance-details strong{font-size:14px}.insight-card{box-shadow:var(--shadow-card);background:linear-gradient(145deg,#14271e,#0c1812);border:1px solid #263c31;border-radius:22px;padding:24px}.insight-title>span{color:#283719;background:#d6bc6a}.insight-title small{font-size:9px}.insight-title h3{font-size:18px}.insight-card>p{font-size:12px}.quick-actions{gap:12px;margin:18px 0}.quick-actions button{border-radius:16px;height:78px}.quick-actions i{border-radius:13px;width:42px;height:42px}.quick-actions b{font-size:12px}.quick-actions small{font-size:10px}.feature-access{border-radius:19px;padding:21px}.feature-access-card{background:var(--surface-elevated);border-radius:15px;min-height:88px}.feature-access-card small{font-size:10px}.panel-title h3{font-size:16px}.panel-title button,.panel-title small{font-size:10px}.cashflow,.transaction-panel,.category-panel{padding:21px}.cashflow-chart{min-height:225px;color:var(--green);padding-top:8px;position:relative}.cashflow-chart svg{width:100%;height:205px;overflow:visible}.chart-grid-line{stroke:var(--line);stroke-width:1px;stroke-dasharray:4 7}.chart-area{color:var(--green)}.chart-line{fill:none;stroke:var(--green);stroke-width:4px;stroke-linecap:round;stroke-linejoin:round}.chart-dot{fill:var(--white);stroke:var(--green);stroke-width:3px}.chart-day{fill:var(--muted);text-transform:capitalize;font-size:11px;font-weight:700}.chart-summary{justify-items:end;gap:2px;display:grid;position:absolute;top:18px;right:8px}.chart-summary span{color:var(--muted);font-size:9px}.chart-summary b{color:var(--ink);font-size:12px}.transaction-row{min-height:58px}.transaction-row b,.tx-main b{font-size:12px}.transaction-row small,.tx-main small{font-size:10px}.transaction-row strong{font-size:12px}.toolbar{gap:10px}.search,.transaction-toolbar>input,.transaction-toolbar>select,.month-picker,.date-picker{border-color:var(--line);background:var(--white);min-height:44px;color:var(--ink)}.search input,.filters button,.table-row{font-size:12px}.table-head{height:48px;font-size:10px}.table-row{min-height:70px}.table-row>strong{font-size:12px}.row-actions button{min-width:34px;min-height:34px}.budget-overview{background:linear-gradient(135deg,#13291f,#214f39);border-radius:21px}.budget-overview h2{font-size:30px}.budget-overview p,.budget-overview span{font-size:11px}.budget-ring{border-color:#d7bb62 #d7bb62 #d7bb62 #395948}.budget-item,.stat,.feature-section,.profile-card,.data-card{box-shadow:var(--shadow-soft)}.progress,.mini-progress,.report-meter{background:var(--chart-rest);height:8px}.progress span,.mini-progress i,.report-meter span{background:linear-gradient(90deg, var(--green), #55d695)}.stat h3{font-size:20px}.stat span,.stat small,.category-list span,.category-list b,.all-time-note{font-size:11px}.donut{box-shadow:inset 0 0 0 1px var(--line)}.feature-section summary{min-height:72px}.feature-section summary b,.goal-grid b,.simple-records b{font-size:13px}.feature-section summary small,.goal-grid small,.simple-records small{font-size:10px}.todo-create input,.compact-form input,.compact-form select,.transfer-form input,.transfer-form select,.text-input{min-height:44px;font-size:12px}.todo-list>div>span{font-size:13px}.todo-list>div>span small{font-size:10px}.todo-check{width:28px;height:28px}.profile-card h2{font-size:22px}.profile-card p,.data-card p,.category-manager p{font-size:11px}.modal-backdrop{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#05110b94}.modal{border:1px solid var(--line);border-radius:22px;box-shadow:0 30px 90px #00000047}.modal header h2{font-size:22px}.modal label{font-size:11px}.amount-input input{font-size:27px}.category-chips button{min-height:38px;font-size:11px}.scan-box.improved{background:#f0f8f3;border-color:#bcdcca;border-radius:16px;grid-template-columns:minmax(190px,1fr) auto;gap:12px;display:grid}.scan-box.improved>div:first-child b{align-items:center;gap:7px;font-size:12px;display:flex}.scan-box.improved small{font-size:10px}.scan-mode-toggle{background:#dfece4;border-radius:11px;grid-column:1/-1;width:max-content;padding:3px;display:flex}.scan-mode-toggle button{min-height:34px;color:var(--muted);background:0 0;border:0;border-radius:9px;padding:0 12px;font-size:10px;font-weight:800}.scan-mode-toggle button.active{background:var(--white);color:var(--green-dark);box-shadow:0 4px 12px #1236231a}.scan-good{color:var(--green-dark)}.scan-check{color:#a26912}.update-banner{z-index:120;color:#f5faf7;background:#10251b;border:1px solid #3b5d4b;border-radius:17px;align-items:center;gap:12px;width:min(560px,100% - 28px);padding:12px;display:flex;position:fixed;bottom:22px;left:50%;transform:translate(-50%);box-shadow:0 24px 70px #00000059}.update-banner>span{color:#24331d;background:#d7bb62;border-radius:12px;flex:none;place-items:center;width:40px;height:40px;display:grid}.update-banner>div{flex:1;gap:2px;min-width:0;display:grid}.update-banner b{font-size:12px}.update-banner small{color:#b8c9bf;font-size:10px}.update-banner button{color:#092316;background:#41d488;border:0;border-radius:11px;min-height:38px;padding:0 14px;font-size:10px;font-weight:900}.connection-pill{z-index:115;color:#fff;box-shadow:var(--shadow-card);background:#28322d;border-radius:999px;align-items:center;gap:7px;padding:9px 12px;font-size:10px;font-weight:800;display:flex;position:fixed;bottom:18px;right:18px}.app-shell.dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#edf6f1;--muted:#a0b1a7;--cream:#09110d;--white:#121d17;--line:#293a31;--green:#48d78c;--green-dark:#76e7aa;--green-soft:#193a29;--amber:#f2c46f;--blue:#87aeff;--red:#ff8589;--chart-rest:#2a3a32;--surface-elevated:#17231c;--shadow-soft:0 12px 34px #00000040;--shadow-card:0 20px 50px #00000052;background:radial-gradient(circle at 80% 0%, #1c573947, transparent 26rem), var(--cream)}.app-shell.dark .topbar{background:#0f1914db}.app-shell.dark .side-tip{background:#292617;border-color:#5b5030}.app-shell.dark .feature-access,.app-shell.dark .feature-access-card,.app-shell.dark .quick-actions button,.app-shell.dark .panel{border-color:var(--line)}.app-shell.dark .feature-access-card:hover{border-color:#3e6b52}.app-shell.dark .chart-grid-line{stroke:#31423a}.app-shell.dark .chart-dot{fill:#121d17}.app-shell.dark .scan-box.improved{background:#132b1e;border-color:#315d43}.app-shell.dark .scan-mode-toggle{background:#1c3226}.app-shell.dark .scan-mode-toggle button.active{color:#8cebb7;background:#294335}.app-shell.dark .login-error{color:#ffb4b7;background:#351f22;border-color:#704248}@media (width<=1050px){.sidebar{width:218px}.workspace{margin-left:218px}}@media (width<=720px){body{padding-bottom:calc(92px + env(safe-area-inset-bottom))}.workspace{margin-left:0}.topbar{height:64px;padding:0 14px}.page-content{padding:17px 13px 32px}.page-heading h1{font-size:22px}.balance-card{min-height:210px;padding:20px}.balance-card h2{margin-top:20px;font-size:29px}.balance-details{gap:20px}.balance-details strong{font-size:12px}.quick-actions button,.quick-actions button:last-child{min-height:82px}.feature-access-card{min-height:96px}.cashflow-chart{min-height:200px}.cashflow-chart svg{height:185px}.chart-summary{right:2px}.scan-box.improved{grid-template-columns:1fr}.scan-mode-toggle{grid-column:1;width:100%}.scan-mode-toggle button{flex:1}.update-banner{bottom:calc(92px + env(safe-area-inset-bottom));flex-wrap:wrap;align-items:flex-start}.update-banner>div{width:calc(100% - 56px)}.update-banner button{width:100%}.connection-pill{bottom:calc(92px + env(safe-area-inset-bottom))}}.report-trend{margin:15px 0;padding:21px}.report-trend-head{justify-content:space-between;align-items:end;gap:16px;display:flex}.report-trend-head>div:first-child>span{color:var(--green-dark);letter-spacing:1.4px;font-size:9px;font-weight:900}.report-trend-head h3{margin:5px 0 0;font-size:16px}.chart-legend{color:var(--muted);gap:13px;font-size:10px;display:flex}.chart-legend span{align-items:center;gap:6px;display:flex}.chart-legend i{border-radius:3px;width:8px;height:8px}.income-dot{background:var(--green)}.expense-dot{background:var(--red)}.trend-bars{border-bottom:1px solid var(--line);background:repeating-linear-gradient(to bottom, transparent 0, transparent 48px, var(--line) 49px, transparent 50px);grid-template-columns:repeat(6,1fr);gap:14px;height:220px;margin-top:22px;padding:10px 8px 0;display:grid}.trend-month{grid-template-rows:1fr 24px;gap:7px;height:100%;display:grid}.trend-month>div{justify-content:center;align-items:end;gap:5px;min-height:0;display:flex}.trend-month>div>span{border-radius:7px 7px 2px 2px;width:min(24px,34%);min-height:4px;transition:height .22s}.trend-income{background:linear-gradient(#4ed794,#0e7748)}.trend-expense{background:linear-gradient(#f08386,#bb3f47)}.trend-month>small{color:var(--muted);text-align:center;text-transform:capitalize;font-size:10px;font-weight:750}.app-shell.dark .trend-bars{background:repeating-linear-gradient(#0000 0 48px,#2b3d33 49px,#0000 50px)}@media (width<=720px){.report-trend{padding:15px}.report-trend-head{align-items:start;display:grid}.trend-bars{gap:7px;height:190px;padding-inline:0}.trend-month>div>span{width:min(17px,38%)}.notification-button{display:grid}.report-actions{width:100%;margin-top:10px}.report-actions .outline{flex:1;display:block}.month-picker{flex:1;min-width:0}.date-picker{margin-top:8px}.todo-create{grid-template-columns:1fr 105px;display:grid}.todo-create button{grid-column:1/-1;height:44px}.todo-progress{grid-template-columns:1fr;gap:8px}.todo-layout{grid-template-columns:1fr}.habit-chart>div{height:150px}.transaction-toolbar>input,.transaction-toolbar>select{width:calc(50% - 5px)}.table-head,.table-row{grid-template-columns:1fr auto auto}.table-row>span{display:none}.row-actions{display:flex}.compact-form.four,.transfer-form{grid-template-columns:1fr 1fr}.compact-form.four .primary{grid-column:1/-1;height:42px}.wallet-list,.goal-grid{grid-template-columns:1fr}.feature-section summary{padding:15px}.feature-body{padding:0 15px 15px}.mobile-nav{overflow-x:auto}.mobile-nav button{min-width:48px}}.budget-alert{border-color:#f0c96e}.budget-warning{color:#8a6717;background:#fff6d9;border-radius:8px;margin-top:10px;padding:7px 9px;font-size:8px;font-weight:800;display:block}.chart-value{color:var(--muted);white-space:nowrap;margin-bottom:5px;font-size:8px;font-weight:800}.panel,.quick-actions button,.table-panel{box-shadow:0 8px 28px #1437240d}.app-shell.dark{--chart-rest:#33463b;--nav-shadow:0 16px 42px #00000073}.app-shell.dark .donut>div{background:var(--white)}.app-shell.dark .chart-bars span,.app-shell.dark .habit-chart i{box-shadow:0 0 16px #28c76f2e}.feature-menu-backdrop{display:none}@media (width<=720px){body{padding-bottom:calc(96px + env(safe-area-inset-bottom))}.workspace{min-height:100vh}.topbar{height:62px;padding:0 14px}.topbar h2{font-size:16px}.page-content{padding:15px 12px 24px}.page-heading{gap:9px;margin-bottom:14px}.page-heading h1{font-size:20px;line-height:1.15}.page-heading p{margin-top:5px;font-size:10px;line-height:1.45}.panel{border-radius:18px}.hero-grid,.dashboard-grid,.todo-layout,.feature-stack{gap:10px}.balance-card{border-radius:21px;min-height:190px;padding:18px}.balance-card h2{margin:16px 0 7px;font-size:25px}.balance-details{gap:22px;margin-top:18px}.insight-card{border-radius:19px;margin-top:10px;padding:17px}.quick-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0}.quick-actions button,.quick-actions button:last-child{text-align:center;border-radius:16px;grid-column:auto;place-items:center;gap:4px;height:76px;padding:9px 6px;display:grid}.quick-actions i{border-radius:11px;width:32px;height:32px;font-size:15px}.quick-actions span{display:block}.quick-actions b{font-size:9px;line-height:1.2;display:block}.quick-actions em,.quick-actions small{display:none}.cashflow,.transaction-panel,.category-panel,.habit-chart{padding:15px}.chart-bars{gap:5px;height:158px;padding-top:18px}.chart-bars span{width:min(25px,68%);min-height:8px;max-height:calc(100% - 38px)}.chart-bars small,.habit-chart small{font-size:8px}.chart-value{font-size:7px}.report-stats{grid-template-columns:1fr 1fr;gap:8px}.report-stats .stat{min-height:94px;padding:13px}.report-stats .stat:last-child{grid-column:1/-1}.stat h3{font-size:15px}.stat>i{border-radius:12px;width:36px;height:36px}.category-panel{grid-template-columns:102px minmax(0,1fr);column-gap:11px}.donut{width:96px;height:96px;margin-top:18px}.donut>div{width:61px;height:61px}.category-list{margin-top:15px}.category-list span,.category-list b{font-size:9px}.habit-chart>div{height:145px}.feature-section summary{padding:13px}.feature-body{padding:0 13px 13px}.mobile-nav{left:8px;right:8px;bottom:max(8px, env(safe-area-inset-bottom));height:78px;box-shadow:var(--nav-shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff5;border-radius:25px;padding:6px 7px;overflow:visible}.mobile-nav button{border-radius:15px;gap:4px;min-width:0;min-height:54px;padding:4px 2px}.mobile-nav button i{border-radius:10px;place-items:center;width:31px;height:28px;font-size:21px;line-height:1;display:grid}.mobile-nav small{letter-spacing:0;font-size:9px;line-height:1}.mobile-nav button.active i{color:var(--green-dark);background:var(--green-soft)}.mobile-nav .mobile-fab{min-height:62px}.mobile-nav .mobile-fab span{border-width:5px;border-radius:19px;width:54px;height:54px;margin-top:-27px;font-size:29px}.mobile-nav .mobile-fab small{color:var(--green-dark);margin-top:-2px}.app-shell.dark .mobile-nav{background:#18231df5;border-color:#3a4d41}.app-shell.dark .mobile-nav button{color:#a9b8af}.app-shell.dark .mobile-nav button.active,.app-shell.dark .mobile-nav .mobile-fab small{color:#73e3a5}.app-shell.dark .mobile-nav button.active i{color:#79e8aa;background:#1d422d}.feature-menu-backdrop{z-index:45;padding:12px 9px calc(96px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#07120c7a;align-items:flex-end;display:flex;position:fixed;inset:0}.feature-menu-sheet{border:1px solid var(--line);background:var(--white);width:100%;max-height:calc(100vh - 125px);color:var(--ink);border-radius:24px;padding:10px 12px 13px;animation:.16s ease-out feature-menu-in;overflow-y:auto;box-shadow:0 22px 70px #00000047}.feature-menu-handle{background:var(--line);border-radius:4px;width:40px;height:4px;margin:0 auto 9px}.feature-menu-sheet header{justify-content:space-between;align-items:center;padding:0 3px 10px;display:flex}.feature-menu-sheet header span{color:var(--green-dark);letter-spacing:1.7px;font-size:8px;font-weight:900}.feature-menu-sheet h2{margin:3px 0 0;font-size:19px}.feature-menu-sheet header>button{border:1px solid var(--line);background:var(--cream);width:38px;height:38px;color:var(--ink);border-radius:13px;font-size:22px}.feature-menu-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.feature-menu-grid>button,.feature-theme-toggle{border:1px solid var(--line);background:var(--cream);min-height:70px;color:var(--ink);text-align:left;border-radius:17px;align-items:center;gap:10px;padding:10px;display:flex}.feature-menu-grid>button.active{background:var(--green-soft);border-color:#70d99d}.feature-menu-grid i,.feature-theme-toggle i{background:var(--white);width:36px;height:36px;color:var(--green-dark);border-radius:12px;flex:none;place-items:center;font-size:19px;font-style:normal;display:grid}.feature-menu-grid span,.feature-theme-toggle span{flex:1;gap:3px;min-width:0;display:grid}.feature-menu-grid b,.feature-theme-toggle b{font-size:11px}.feature-menu-grid small,.feature-theme-toggle small{color:var(--muted);font-size:8px}.feature-menu-grid em{color:var(--muted);font-size:17px;font-style:normal}.feature-theme-toggle{width:100%;min-height:58px;margin-top:8px}.feature-theme-toggle em{background:var(--green-soft);color:var(--green-dark);letter-spacing:.7px;border-radius:8px;padding:5px 7px;font-size:7px;font-style:normal;font-weight:900}.app-shell.dark .feature-menu-sheet,.app-shell.dark .feature-menu-grid>button,.app-shell.dark .feature-theme-toggle,.app-shell.dark .feature-menu-sheet header>button,.app-shell.dark .feature-menu-grid i,.app-shell.dark .feature-theme-toggle i{background:var(--white);color:var(--ink)}.app-shell.dark .feature-menu-grid>button,.app-shell.dark .feature-theme-toggle{border-color:#3a4d41}.app-shell.dark .feature-menu-grid>button.active,.app-shell.dark .feature-theme-toggle em{color:#86ecb3;background:#1d422d}}@keyframes feature-menu-in{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.notification-button{color:var(--ink);place-items:center;display:grid;position:relative}.feature-access{border:1px solid var(--line);background:var(--white);border-radius:22px;margin:20px 0;padding:22px;box-shadow:0 8px 28px #1437240d}.feature-access-head{justify-content:space-between;align-items:end;gap:16px;margin-bottom:16px;display:flex}.feature-access-head span{color:var(--green-dark);letter-spacing:1.5px;font-size:9px;font-weight:900}.feature-access-head h2{letter-spacing:-.45px;margin:5px 0 0;font-size:18px}.feature-access-head>small{color:var(--muted);font-size:11px}.feature-access-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.feature-access-card{border:1px solid var(--line);background:var(--cream);min-height:82px;color:var(--ink);text-align:left;border-radius:16px;align-items:center;gap:11px;padding:13px;transition:all .16s;display:flex}.feature-access-card:hover{border-color:#b9d7c4;transform:translateY(-2px);box-shadow:0 10px 24px #14372417}.feature-access-card>i{color:#13804a;background:#e6f7ed;border-radius:13px;flex:none;place-items:center;width:42px;height:42px;font-style:normal;display:grid}.feature-access-card.blue>i{color:#3566c5;background:#e9f0ff}.feature-access-card.amber>i{color:#a9650d;background:#fff2dc}.feature-access-card.violet>i{color:#7550b7;background:#f1eaff}.feature-access-card>span{flex:1;gap:5px;min-width:0;display:grid}.feature-access-card b{font-size:12px}.feature-access-card small{color:var(--muted);font-size:9px;line-height:1.35}.feature-access-card>svg{color:var(--muted);flex:none}.app-shell.dark .feature-access,.app-shell.dark .feature-access-card{background:var(--white);color:var(--ink)}.app-shell.dark .feature-access-card{border-color:var(--line)}@media (width<=1050px){.feature-access-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.feature-access{border-radius:18px;margin:12px 0;padding:15px}.feature-access-head{align-items:start;margin-bottom:12px}.feature-access-head h2{font-size:17px}.feature-access-head>small{display:none}.feature-access-grid{grid-template-columns:1fr 1fr;gap:8px}.feature-access-card{grid-template-columns:38px 1fr;gap:9px;min-height:92px;padding:11px;display:grid}.feature-access-card>i{width:38px;height:38px}.feature-access-card>svg{display:none}.feature-access-card b{font-size:11px}.feature-access-card small{font-size:9px}.mobile-nav{height:72px;padding:6px 22px;left:18px;right:18px}.mobile-nav button{min-height:56px}.mobile-nav button i{width:38px;height:30px}.mobile-nav small{font-size:10px}}.app-shell.dark .notification-button{color:#91efb8;background:#20382b;border-color:#416b53;box-shadow:inset 0 0 0 1px #7bebab12}.app-shell.dark .notification-button:hover{background:#294936;border-color:#5b9471}.app-shell.dark .notification-button b{color:#fff;background:#ff686e;box-shadow:0 0 0 3px #121d17}.app-shell.dark .quick-actions button:first-child{background:linear-gradient(145deg,#1b3325,#17291f);border-color:#35674a}.app-shell.dark .quick-actions button:nth-child(2){background:linear-gradient(145deg,#352d1c,#282419);border-color:#715a30}.app-shell.dark .quick-actions button:first-child .green-bg{color:#92f0b8;background:#24563a;box-shadow:inset 0 0 0 1px #3d7a54}.app-shell.dark .quick-actions button:nth-child(2) .amber-bg{color:#ffdc8b;background:#59431f;box-shadow:inset 0 0 0 1px #80652f}.app-shell.dark .quick-actions button:first-child b{color:#e3fbed}.app-shell.dark .quick-actions button:nth-child(2) b{color:#fff0c9}.app-shell.dark .quick-actions button:first-child small,.app-shell.dark .quick-actions button:nth-child(2) small{color:#b8c9bf}.app-shell.dark .quick-actions button:first-child em{color:#83dfaa}.app-shell.dark .quick-actions button:nth-child(2) em{color:#e8c878}.app-shell.dark .todo-reminder{color:#effbf4;background:linear-gradient(135deg,#193524,#172a20);border-color:#3c7653;box-shadow:inset 0 0 0 1px #64e0970f}.app-shell.dark .todo-reminder>span{color:#fff;background:#27a864;box-shadow:0 6px 16px #27a86440}.app-shell.dark .todo-reminder b{color:#f1fff7}.app-shell.dark .todo-reminder small{color:#b9d0c1}.app-shell.dark .todo-reminder i{color:#7ce5a8}.family-panel{margin-bottom:15px;padding:22px}.family-panel-head{align-items:center;gap:13px;display:flex}.family-panel-head>span{background:var(--green-soft);border-radius:14px;place-items:center;width:44px;height:44px;font-size:20px;display:grid}.family-panel-head>div{flex:1;min-width:0}.family-panel h3,.family-panel h4{margin:0}.family-panel-head p,.family-setup-grid p{color:var(--muted);margin:5px 0 0;font-size:10px;line-height:1.5}.family-panel-head>b{letter-spacing:.5px;border-radius:999px;padding:7px 10px;font-size:8px}.family-panel-head>b.personal{color:#52645a;background:#edf2ef}.family-panel-head>b.family{color:var(--green-dark);background:var(--green-soft)}.family-setup-grid{grid-template-columns:1fr 1fr;gap:12px;margin-top:18px;display:grid}.family-setup-grid.single{grid-template-columns:minmax(0,1fr)}.family-setup-grid>section{border:1px solid var(--line);background:var(--surface-elevated,var(--white));border-radius:15px;padding:16px}.family-form{grid-template-columns:1fr auto;gap:8px;margin-top:12px;display:grid}.family-form input{min-width:0;height:42px}.invite-code{background:var(--green-soft);border:1px dashed #75b88e;border-radius:13px;grid-template-columns:1fr auto;align-items:center;gap:6px 12px;margin-top:12px;padding:12px;display:grid}.invite-code small{color:var(--muted);grid-column:1/-1;font-size:7px;font-weight:800}.invite-code strong{color:var(--green-dark);letter-spacing:2px;font-size:18px}.family-connected{background:var(--green-soft);color:var(--green-dark);border:1px solid #8ac6a0;border-radius:15px;align-items:center;gap:12px;margin-top:18px;padding:14px;display:flex}.family-connected span{flex:1;display:grid}.family-connected small,.family-safety{color:var(--muted);margin-top:4px;font-size:8px}.family-safety{margin-top:13px;display:block}.transaction-trash{margin-top:15px;padding:16px}.transaction-trash summary{cursor:pointer;font-size:12px;font-weight:850}.transaction-trash>p{color:var(--muted);font-size:9px}.transaction-trash>div{border-top:1px solid var(--line);align-items:center;gap:12px;padding:10px 0;display:flex}.transaction-trash>div>span{flex:1;display:grid}.transaction-trash small{color:var(--muted);margin-top:3px;font-size:8px}.transaction-trash strong{font-size:11px}.app-shell.dark .family-panel-head>b.personal{color:#b9c9c0;background:#26362d}.app-shell.dark .family-setup-grid>section{background:#15221b}.app-shell.dark .invite-code,.app-shell.dark .family-connected{background:#193524;border-color:#3c7653}@media (width<=720px){.family-panel{padding:16px}.family-panel-head{flex-wrap:wrap;align-items:flex-start}.family-panel-head>b{margin-left:57px}.family-setup-grid,.family-form{grid-template-columns:1fr}.family-form button{min-height:42px}.family-connected{flex-wrap:wrap;align-items:flex-start}.family-connected button{width:100%}.transaction-trash>div{flex-wrap:wrap}}.verification-page{background:radial-gradient(circle at 20% 0%, #28bc6b21, transparent 30rem), var(--cream);place-items:center;min-height:100vh;padding:24px;display:grid}.verification-card{border:1px solid var(--line);text-align:center;background:#fff;border-radius:24px;gap:13px;width:min(440px,100%);padding:34px;display:grid;box-shadow:0 24px 70px #0c372024}.verification-card .logo-mark{margin:0 auto 4px}.verification-card h1{margin:0;font-size:26px}.verification-card p{color:var(--muted);margin:0 0 7px;font-size:11px;line-height:1.65}.verification-card .forgot-password{margin:0 auto}.unlinked-partner-card label{width:100%;color:var(--muted);margin:8px 0 6px;font-size:13px;font-weight:700;display:block}.unlinked-partner-card input{border:1px solid var(--line);background:var(--surface);width:100%;min-height:48px;color:var(--text);text-transform:uppercase;letter-spacing:.08em;border-radius:12px;margin-bottom:10px;padding:0 14px}.personal-plan-info span{flex:1}.sidebar{scrollbar-width:thin;background:linear-gradient(180deg, #e8f8efb8, transparent 180px), var(--white);width:272px;padding:22px 16px 16px;overflow-y:auto}.workspace{margin-left:272px}.sidebar .brand{padding:0 10px 18px}.sidebar .add-button{background:linear-gradient(135deg,#096b40,#18a45f);border-radius:14px;min-height:48px;margin:3px 4px 17px}.sidebar-menu{display:grid;gap:17px!important}.sidebar-group{gap:3px;display:grid}.sidebar-group>small{color:#8a958e;letter-spacing:1.35px;padding:0 13px 7px;font-size:8px;font-weight:900}.sidebar .sidebar-group button{border-radius:11px;height:41px;padding:0 12px;font-size:12px;font-weight:720}.sidebar .sidebar-group button.active{color:#075d36;background:linear-gradient(90deg,#dff5e8,#edf9f2);box-shadow:inset 3px 0 #138652}.sidebar .sidebar-group button.active i{color:#0b7947}.side-tip{background:linear-gradient(145deg,#fffaf0,#f7f1df);border-color:#e8d59c;margin-top:18px;margin-bottom:12px;padding:13px 14px}.side-tip>span{color:#987321;letter-spacing:1px;margin-bottom:6px;font-size:8px;font-weight:900}.side-tip p{font-size:9px}.side-profile{margin-top:auto}.topbar{background:#ffffffe0;height:74px;padding:0 30px}.financial-overview{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin:0 0 18px;display:grid}.financial-overview>button{border:1px solid var(--line);min-height:82px;color:var(--ink);background:var(--white);text-align:left;border-radius:16px;align-items:center;gap:11px;padding:14px;transition:all .16s;display:flex;box-shadow:0 8px 26px #1337240d}.financial-overview>button:hover{border-color:#b9d8c5;transform:translateY(-2px);box-shadow:0 13px 30px #13372417}.financial-overview>button>i{color:#0b7545;background:#e5f7ed;border-radius:12px;flex:none;place-items:center;width:39px;height:39px;font-style:normal;display:grid}.financial-overview>button:nth-child(2)>i{color:#9a650e;background:#fff2dd}.financial-overview>button:nth-child(3)>i{color:#6550a7;background:#f0ebff}.financial-overview>button:nth-child(4)>i{color:#3563a7;background:#e8f0ff}.financial-overview>button>span{flex:1;gap:4px;min-width:0;display:grid}.financial-overview small{color:var(--muted);letter-spacing:.55px;font-size:8px;font-weight:850}.financial-overview b{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.financial-overview em{color:var(--muted);font-size:8px;font-style:normal}.financial-overview svg{color:#9aa49e;flex:none}.feature-access-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.app-shell.dark .sidebar{background:linear-gradient(#174f313d,#0000 180px),#17221c}.app-shell.dark .sidebar-group>small{color:#819087}.app-shell.dark .sidebar .sidebar-group button.active{color:#8af0b7;background:linear-gradient(90deg,#1d4b31,#1b3828)}.app-shell.dark .financial-overview>button{border-color:var(--line);color:var(--ink);background:var(--white)}@media (width<=1050px){.sidebar{width:228px}.workspace{margin-left:228px}.financial-overview{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.sidebar{display:none}.workspace{margin-left:0}.topbar{height:66px;padding:0 16px}.financial-overview{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:13px}.financial-overview>button{gap:8px;min-height:76px;padding:11px}.financial-overview>button>i{width:34px;height:34px}.financial-overview em,.financial-overview>button>svg{display:none}.financial-overview b{font-size:10px}.feature-access-grid{grid-template-columns:1fr 1fr}.mobile-nav{padding-inline:5px}.mobile-nav small{font-size:8px}.app-shell input,.app-shell select,.app-shell textarea,.modal input,.modal select,.money-input>input{font-size:16px!important}.planning-page .finance-form-grid,.planning-page .compact-form.two,.planning-page .goal-create,.planning-page .debt-create,.planning-page .recurring-create,.planning-page .goal-entry,.planning-page .debt-payment{width:100%;display:grid;grid-template-columns:minmax(0,1fr)!important}.planning-page .finance-form-grid>*,.planning-page .compact-form.two>*,.planning-page .goal-entry>*,.planning-page .debt-payment>*{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.planning-page .goal-actions{display:grid;grid-template-columns:minmax(0,1fr)!important}.planning-page .goal-actions button,.planning-page .pay-debt,.planning-page .finance-form-grid button,.planning-page .compact-form.two button{min-height:48px}.receipt-modal{width:100%;max-width:100%;max-height:94dvh;overflow-y:auto;transform:none!important}}:root{--admin-green:#0f8f57;--admin-green-dark:#0a5d3c;--admin-ink:#10251b;--admin-muted:#6d7f75;--admin-line:#dce7e1;--admin-bg:#f3f8f5;--admin-white:#fff;--admin-gold:#d7a936}.admin-shell,.admin-login{min-height:100vh;color:var(--admin-ink);background:var(--admin-bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.admin-sidebar{z-index:4;color:#effbf4;background:linear-gradient(165deg,#0b3525,#0c5f3b 68%,#0c7044);flex-direction:column;width:258px;padding:24px 18px;display:flex;position:fixed;inset:0 auto 0 0;box-shadow:12px 0 35px #0b35251f}.admin-brand{align-items:center;gap:12px;padding:0 8px 26px;display:flex}.admin-brand img{background:#fff;border-radius:14px;width:44px;height:44px}.admin-brand span{display:grid}.admin-brand b{font-size:21px}.admin-brand small{color:#b6d8c4;letter-spacing:2px;font-size:9px}.admin-sidebar nav{gap:6px;display:grid}.admin-sidebar nav button,.admin-signout{color:#cae5d5;width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;align-items:center;gap:11px;padding:12px 13px;font-size:14px;display:flex}.admin-sidebar nav button:hover,.admin-sidebar nav button.active{color:#fff;background:#ffffff21}.admin-sidebar nav button.active{box-shadow:inset 3px 0 #e8bf57}.admin-security-note{color:#c9ded2;background:#00000014;border:1px solid #ffffff21;border-radius:13px;gap:9px;margin:auto 4px 16px;padding:13px;font-size:11px;line-height:1.5;display:flex}.admin-security-note svg{color:#eac663;flex:none}.admin-signout{border:1px solid #ffffff2b}.admin-workspace{min-height:100vh;margin-left:258px}.admin-topbar{z-index:3;border-bottom:1px solid var(--admin-line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffed;justify-content:space-between;align-items:center;min-height:84px;padding:16px 32px;display:flex;position:sticky;top:0}.admin-topbar h1{margin:2px 0 0;font-size:25px}.admin-topbar small{color:var(--admin-green);letter-spacing:1.5px;font-weight:800}.admin-topbar>div:last-child{align-items:center;gap:10px;display:flex}.admin-topbar button,.admin-toolbar>button,.admin-toolbar select,.admin-actions button,.row-actions button,.admin-load-more,.admin-onboarding button,.admin-feed button{border:1px solid var(--admin-line);min-height:38px;color:var(--admin-ink);font:inherit;cursor:pointer;background:#fff;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:8px 12px;font-size:12px;font-weight:700;display:inline-flex}button:disabled{cursor:wait;opacity:.6}.admin-role{color:var(--admin-green-dark);background:#e8f5ed;border-radius:99px;align-items:center;gap:6px;padding:8px 11px;font-size:12px;font-weight:800;display:inline-flex}.admin-page{padding:26px 32px 48px}.admin-alert{border-radius:12px;justify-content:space-between;align-items:center;margin:16px 32px 0;padding:13px 16px;font-size:13px;font-weight:700;display:flex}.admin-alert.error{color:#9b2525;background:#ffeded}.admin-alert.success{color:#12623e;background:#e6f7ed}.admin-alert button{cursor:pointer;background:0 0;border:0;font-size:20px}.admin-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.admin-kpis article{border:1px solid var(--admin-line);background:#fff;border-radius:18px;align-items:center;gap:13px;min-height:102px;padding:20px;display:flex;box-shadow:0 9px 25px #13422b0b}.admin-kpis i{width:43px;height:43px;color:var(--admin-green);background:#e9f6ef;border-radius:13px;place-items:center;display:grid}.admin-kpis span{gap:4px;display:grid}.admin-kpis small{color:var(--admin-muted)}.admin-kpis b{font-size:23px}.admin-two-column{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}.admin-panel{border:1px solid var(--admin-line);background:#fff;border-radius:18px;padding:22px;box-shadow:0 9px 25px #13422b0a}.admin-panel h2{margin:0 0 8px;font-size:18px}.admin-panel>p{color:var(--admin-muted);margin:0 0 16px;font-size:13px;line-height:1.6}.admin-panel ul{color:var(--admin-muted);margin:0 0 17px;padding-left:19px;font-size:13px;line-height:1.85}.admin-actions{flex-wrap:wrap;gap:9px;display:flex}.admin-link{color:var(--admin-green);font-size:13px;font-weight:800}.admin-toolbar{grid-template-columns:minmax(300px,1fr) auto auto;gap:10px;margin-bottom:13px;display:grid}.admin-search{border:1px solid var(--admin-line);background:#fff;border-radius:12px;align-items:center;gap:9px;padding-left:13px;display:flex}.admin-search input{min-width:0;font:inherit;border:0;outline:0;flex:1}.admin-search button{border:0;border-left:1px solid var(--admin-line);color:#fff;background:var(--admin-green);cursor:pointer;border-radius:0 11px 11px 0;align-self:stretch;padding:0 15px;font-weight:800}.admin-table-wrap{border:1px solid var(--admin-line);background:#fff;border-radius:16px;overflow:auto}.admin-table-wrap table{border-collapse:collapse;width:100%;min-width:1180px}.admin-table-wrap th{color:#708079;letter-spacing:.7px;text-align:left;text-transform:uppercase;background:#f7faf8;padding:13px 14px;font-size:10px}.admin-table-wrap td{vertical-align:top;border-top:1px solid #edf2ef;padding:15px 14px;font-size:12px}.admin-table-wrap td>b,.admin-table-wrap td>small{margin-bottom:4px;display:block}.admin-table-wrap .muted{color:#92a099;text-overflow:ellipsis;max-width:145px;overflow:hidden}.status{color:#52645b;background:#edf2ef;border-radius:99px;width:fit-content;margin-bottom:5px;padding:4px 8px;font-size:10px;font-weight:800;display:inline-flex}.status.active,.status.lifetime,.status.open{color:#0c7446;background:#def4e8}.status.disabled,.status.expired,.status.suspended{color:#a22a2a;background:#ffe4e4}.status.renewal_due{color:#8b5b00;background:#fff0c9}.status.resolved{color:#4b5e54;background:#e8efeb}.row-actions{flex-wrap:wrap;gap:5px;max-width:250px;display:flex}.row-actions button{min-height:28px;padding:5px 8px;font-size:10px}button.danger,.row-actions button.danger{color:#a52c2c;background:#fff7f7;border-color:#f2caca}.admin-empty{color:var(--admin-muted);text-align:center;padding:42px}.admin-load-more{margin:14px auto 0}.admin-form-panel{max-width:920px;margin:0 auto}.admin-form-panel>div:first-child small{color:var(--admin-green);letter-spacing:1.4px;font-weight:900}.admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:22px;display:grid}.admin-form-grid label,.admin-panel>label{gap:7px;margin-bottom:13px;font-size:12px;font-weight:800;display:grid}.admin-form-grid label small{color:var(--admin-muted);font-weight:500}.admin-form-grid input,.admin-form-grid select,.admin-form-grid textarea,.admin-panel label input,.admin-panel label select,.admin-panel label textarea{box-sizing:border-box;width:100%;color:var(--admin-ink);font:inherit;background:#fbfdfc;border:1px solid #d6e1db;border-radius:10px;outline:none;padding:11px 12px}.admin-form-grid input:focus,.admin-form-grid select:focus,.admin-form-grid textarea:focus{border-color:var(--admin-green);box-shadow:0 0 0 3px #0f8f571a}.wide{grid-column:1/-1}.admin-primary{color:#fff;background:linear-gradient(135deg, var(--admin-green), #13a867);min-height:43px;font:inherit;cursor:pointer;border:0;border-radius:11px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-weight:850;display:inline-flex}.admin-onboarding{background:#f1fbf5;border:1px solid #bfe1cc;border-radius:14px;margin-top:20px;padding:18px}.admin-onboarding h3{margin:0 0 10px}.admin-onboarding pre{white-space:pre-wrap;background:#fff;border-radius:10px;padding:13px;font:12px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace;overflow:auto}.admin-onboarding small{color:var(--admin-muted);margin-top:10px;display:block}.admin-feed{gap:10px;max-height:620px;display:grid;overflow:auto}.admin-feed article{border:1px solid #e3ebe6;border-radius:12px;padding:13px}.admin-feed b,.admin-feed small{display:block}.admin-feed p{color:var(--admin-muted);margin:5px 0;font-size:12px;line-height:1.5}.admin-feed small{color:#88978f;font-size:10px}.admin-feed button{min-height:30px;margin-top:9px;padding:5px 9px}.admin-feed.audit article{gap:11px;display:flex}.admin-feed.audit i{width:34px;height:34px;color:var(--admin-green);background:#eaf6ef;border-radius:9px;flex:none;place-items:center;display:grid}.admin-login{background:radial-gradient(circle at 0 0,#d9f1e4,#0000 36%),linear-gradient(145deg,#f8fbf9,#eaf4ee);place-items:center;padding:22px;display:grid}.admin-login form,.admin-login>section{box-sizing:border-box;background:#fff;border:1px solid #dbe6e0;border-radius:22px;width:min(420px,100%);padding:34px;box-shadow:0 24px 65px #0d4c2f1f}.admin-login img{border-radius:16px;width:56px;height:56px}.admin-login form>small{color:var(--admin-green);letter-spacing:1.6px;margin-top:20px;font-weight:900;display:block}.admin-login h1{margin:5px 0 9px}.admin-login p{color:var(--admin-muted);font-size:13px;line-height:1.55}.admin-login label{gap:7px;margin:13px 0;font-size:12px;font-weight:800;display:grid}.admin-login input{border:1px solid var(--admin-line);font:inherit;border-radius:10px;padding:12px}.admin-login .admin-primary{width:100%;margin-top:8px}.admin-login a{color:var(--admin-green);text-align:center;margin-top:16px;font-size:12px;display:block}.admin-login .admin-alert{margin:10px 0}@media (width<=980px){.admin-sidebar{width:auto;padding:14px;position:static}.admin-sidebar nav{display:flex;overflow:auto}.admin-sidebar nav button{white-space:nowrap;width:auto}.admin-security-note{display:none}.admin-signout{width:auto;position:absolute;top:16px;right:14px}.admin-brand{padding-bottom:12px}.admin-workspace{margin-left:0}.admin-topbar{padding:14px 18px}.admin-page{padding:18px}.admin-alert{margin-inline:18px}}@media (width<=720px){.admin-topbar>div:last-child .admin-role{display:none}.admin-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-two-column,.admin-form-grid{grid-template-columns:1fr}.wide{grid-column:auto}.admin-toolbar{grid-template-columns:1fr 1fr}.admin-search{grid-column:1/-1}.admin-kpis article{min-height:82px;padding:14px}.admin-kpis b{font-size:18px}}
