:root {
  --app-bg:#f4f0e7;
  --shell:#fbfaf6;
  --surface:#fffdf8;
  --surface-raised:#ffffff;
  --surface-muted:#eef4ee;
  --surface-selected:#e2f3e9;
  --text:#202722;
  --text-muted:#68716b;
  --text-subtle:#8a928d;
  --line:#dfe3dc;
  --line-strong:#c8cec6;
  --primary:#0b7a5a;
  --primary-hover:#086248;
  --primary-soft:#d8efe5;
  --accent:#8ed9b6;
  --success:#167251;
  --warning:#a2640a;
  --warning-soft:#f6ead4;
  --danger:#ad453b;
  --danger-soft:#f7e5e2;
  --focus:#0b7a5a;
  --charcoal:#26302b;
  --mint:#a8dfc4;
  --ivory:#fbf7ee;
  --radius-xs:8px;
  --radius-sm:12px;
  --radius-md:18px;
  --radius-lg:26px;
  --shadow-sm:0 1px 2px rgba(24,31,27,.04),0 7px 18px rgba(24,31,27,.04);
  --shadow-md:0 14px 36px rgba(24,31,27,.09);
  --sidebar:240px;
  --topbar:82px;
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--text);
  background:var(--app-bg);
  font-synthesis:none;
}
*{box-sizing:border-box}
html{background:var(--app-bg);scroll-behavior:smooth}
body{margin:0;min-width:320px;min-height:100vh;background:var(--app-bg);color:var(--text);line-height:1.45;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit;color:inherit}
button,a{ -webkit-tap-highlight-color:transparent }
button{cursor:pointer}
a{color:inherit;text-decoration:none}
img,svg{display:block;max-width:100%}
:focus-visible{outline:3px solid color-mix(in srgb,var(--focus) 38%,transparent);outline-offset:2px}
.skip-link{position:fixed;left:16px;top:10px;z-index:1000;padding:9px 12px;border-radius:10px;background:var(--charcoal);color:white;transform:translateY(-140%)}
.skip-link:focus{transform:translateY(0)}
.app-shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100vh;padding:14px;gap:14px}
.sidebar{position:sticky;top:14px;height:calc(100vh - 28px);display:flex;flex-direction:column;background:var(--charcoal);color:#f6f7f4;border-radius:24px;padding:16px;box-shadow:var(--shadow-md);z-index:30}
.brand-row{display:flex;align-items:center;gap:11px;padding:4px 6px 18px}
.brand-mark{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--mint);color:var(--charcoal);font-weight:900;letter-spacing:-.04em;box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}
.brand-mark.small{width:34px;height:34px;border-radius:11px}
.brand-copy{display:grid;gap:1px}.brand-copy strong{font-size:15px}.brand-copy span{font-size:11px;color:#b8c0ba}
.side-nav{display:grid;gap:4px}.side-nav a{display:flex;align-items:center;gap:11px;min-height:44px;padding:0 12px;border-radius:12px;color:#cbd1cc;font-size:13px;font-weight:650;transition:background .18s ease,color .18s ease,transform .18s ease}.side-nav a:hover{background:rgba(255,255,255,.075);color:white}.side-nav a.active{background:#f7f7f3;color:var(--charcoal)}.side-nav a.active .nav-icon{background:var(--primary-soft);color:var(--primary)}
.nav-icon{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;font-style:normal;background:rgba(255,255,255,.06);font-size:14px}
.sidebar-spacer{flex:1}.side-nav-secondary{margin-top:16px;padding-top:14px;border-top:1px solid rgba(255,255,255,.09)}
.workspace-card{margin-top:12px;display:flex;align-items:center;gap:9px;padding:11px;border-radius:14px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.08)}.workspace-card div{display:grid;min-width:0}.workspace-card strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workspace-card span{font-size:10px;color:#aab3ac}.workspace-dot{width:9px;height:9px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 4px rgba(168,223,196,.12)}
.app-column{min-width:0;background:color-mix(in srgb,var(--shell) 82%,transparent);border-radius:26px;border:1px solid rgba(255,255,255,.8);box-shadow:inset 0 0 0 1px rgba(38,48,43,.025);overflow:clip}
.topbar{min-height:var(--topbar);display:flex;align-items:center;justify-content:space-between;padding:15px 22px 10px;border-bottom:1px solid color-mix(in srgb,var(--line) 76%,transparent);background:rgba(251,250,246,.86);backdrop-filter:blur(14px);position:sticky;top:0;z-index:20}.topbar-copy{min-width:0}.eyebrow{margin:0 0 3px;color:var(--text-muted);font-size:10px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.topbar h1{margin:0;font-size:21px;line-height:1.12;letter-spacing:-.035em}.topbar-actions{display:flex;align-items:center;gap:8px}.search-trigger{height:38px;min-width:160px;padding:0 9px 0 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--text-muted);box-shadow:0 1px 0 rgba(255,255,255,.7)}.search-trigger span{font-size:12px}.search-trigger kbd{font-size:10px;border:1px solid var(--line);border-radius:6px;background:var(--surface-muted);padding:2px 5px;font-family:inherit;color:var(--text-subtle)}
.icon-button{width:38px;height:38px;border:1px solid var(--line);border-radius:12px;background:var(--surface);display:grid;place-items:center;position:relative}.icon-button:hover,.profile-button:hover,.search-trigger:hover{border-color:var(--line-strong);background:#fff}.notification-dot{position:absolute;width:7px;height:7px;border-radius:50%;right:7px;top:7px;background:var(--warning);border:2px solid var(--surface)}
.profile-button{height:40px;display:flex;align-items:center;gap:9px;border:1px solid transparent;border-radius:13px;background:transparent;padding:3px 7px}.avatar{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary);font-size:10px;font-weight:800}.profile-copy{display:grid;text-align:left;line-height:1.2}.profile-copy strong{font-size:11px}.profile-copy span{font-size:9px;color:var(--text-muted)}
main{padding:20px 22px 36px;min-height:calc(100vh - var(--topbar));outline:none}.static-fallback{display:grid;gap:14px}.fallback-hero{padding:28px;border-radius:22px;background:var(--charcoal);color:white}.fallback-hero .eyebrow{color:#b8c0ba}.fallback-balance{font-size:40px;font-weight:800;letter-spacing:-.05em}.fallback-hero p:last-child{margin:8px 0 0;color:#bdc5bf;font-size:12px}.fallback-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.fallback-grid article{padding:18px;border-radius:18px;background:var(--surface);border:1px solid var(--line);display:grid;gap:6px}.fallback-grid span{font-size:11px;color:var(--text-muted)}.fallback-grid strong{font-size:20px}.noscript-note{padding:12px 14px;border-radius:12px;background:var(--warning-soft);color:#70450b}
.mobile-chrome,.mobile-bottom-nav{display:none}
.page{display:grid;gap:16px;animation:pageIn .24s ease both}.page-head{display:flex;align-items:end;justify-content:space-between;gap:16px}.page-head h2{margin:0;font-size:18px;letter-spacing:-.025em}.page-head p{margin:4px 0 0;color:var(--text-muted);font-size:12px}.page-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.button{min-height:38px;border:1px solid var(--line);border-radius:11px;background:var(--surface);padding:0 13px;font-size:11px;font-weight:750;display:inline-flex;align-items:center;justify-content:center;gap:7px}.button:hover{border-color:var(--line-strong);background:white}.button.primary{background:var(--primary);color:white;border-color:var(--primary)}.button.primary:hover{background:var(--primary-hover)}.button.danger{color:var(--danger);background:var(--danger-soft);border-color:#edc7c1}.button.ghost{background:transparent}.button:disabled{cursor:not-allowed;opacity:.5}.button.small{min-height:32px;padding:0 10px;font-size:10px}.button.icon-only{width:36px;padding:0}
.overview-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(250px,.55fr);gap:14px}.balance-slab{position:relative;overflow:hidden;min-height:258px;border-radius:24px;background:var(--charcoal);color:white;padding:24px;display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,.88fr);gap:22px;box-shadow:var(--shadow-md)}.balance-slab:after{content:"";position:absolute;inset:auto -100px -180px auto;width:330px;height:330px;border-radius:50%;border:68px solid rgba(168,223,196,.08);pointer-events:none}.balance-copy{align-self:center;position:relative;z-index:1}.balance-copy .eyebrow{color:#aeb8b1}.balance-value{margin:6px 0 3px;font-size:46px;font-weight:850;letter-spacing:-.06em;font-variant-numeric:tabular-nums}.balance-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:#bac3bd;font-size:11px}.delta{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800}.delta.positive{background:rgba(168,223,196,.13);color:#baf2d5}.delta.negative{background:rgba(247,229,226,.1);color:#f0b7b0}.balance-actions{display:flex;gap:8px;margin-top:18px}.balance-actions .button{background:#f8faf7;color:var(--charcoal);border-color:transparent}.balance-actions .button.secondary-dark{background:rgba(255,255,255,.08);color:white;border-color:rgba(255,255,255,.11)}
.cash-segments{align-self:stretch;position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:8px}.cash-segment{border:1px solid rgba(255,255,255,.10);border-radius:16px;background:rgba(255,255,255,.055);padding:13px;display:flex;flex-direction:column;justify-content:space-between;min-width:0}.cash-segment.primary{grid-row:span 2;background:var(--mint);color:var(--charcoal);border-color:transparent}.cash-segment span{font-size:10px;color:inherit;opacity:.72}.cash-segment strong{font-size:18px;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.cash-segment.primary strong{font-size:25px}.cash-segment em{font-style:normal;font-size:9px;opacity:.65}
.metric-stack{display:grid;grid-template-rows:repeat(3,1fr);gap:10px}.metric-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:15px;display:grid;gap:9px;box-shadow:var(--shadow-sm);min-width:0}.metric-top{display:flex;justify-content:space-between;gap:10px;align-items:center}.metric-card .label{font-size:10px;color:var(--text-muted);font-weight:700}.metric-icon{width:27px;height:27px;border-radius:9px;display:grid;place-items:center;background:var(--surface-muted);font-size:11px}.metric-value{font-size:23px;font-weight:800;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.metric-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:9px;color:var(--text-subtle)}
.content-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:14px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-sm);min-width:0;overflow:hidden}.panel.pad{padding:18px}.panel-head{display:flex;align-items:start;justify-content:space-between;gap:12px;padding:17px 18px 12px}.panel-head.compact{padding:0 0 13px}.panel-title{min-width:0}.panel-title h3{margin:0;font-size:13px;letter-spacing:-.012em}.panel-title p{margin:3px 0 0;color:var(--text-muted);font-size:10px}.panel-actions{display:flex;gap:6px;align-items:center}.segmented{display:inline-flex;padding:3px;border-radius:10px;background:var(--surface-muted);gap:2px}.segmented button{border:0;background:transparent;border-radius:8px;min-height:28px;padding:0 9px;font-size:9px;font-weight:700;color:var(--text-muted)}.segmented button.active{background:var(--surface-raised);color:var(--text);box-shadow:0 1px 3px rgba(24,31,27,.07)}
.chart-wrap{padding:0 15px 13px}.chart{width:100%;height:220px;overflow:visible}.chart text{font-family:inherit;fill:var(--text-subtle);font-size:9px}.chart .grid{stroke:var(--line);stroke-width:1}.chart .axis{stroke:var(--line-strong);stroke-width:1}.chart .bar-positive{fill:var(--primary)}.chart .bar-negative{fill:#c76b5f}.chart .bar-total{fill:var(--charcoal)}.chart .line{fill:none;stroke:var(--primary);stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}.chart .area{fill:url(#areaFill)}.chart .point{fill:var(--surface);stroke:var(--primary);stroke-width:2}.chart-legend{display:flex;gap:12px;align-items:center;padding:0 18px 14px;font-size:9px;color:var(--text-muted)}.legend-key{display:inline-flex;align-items:center;gap:5px}.legend-key i{width:7px;height:7px;border-radius:2px;background:var(--primary)}.legend-key.out i{background:#c76b5f}.legend-key.total i{background:var(--charcoal)}
.budget-list{display:grid;gap:13px;padding:4px 18px 18px}.budget-row{display:grid;gap:7px}.budget-row-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.budget-name{display:flex;align-items:center;gap:8px;min-width:0}.budget-swatch{width:9px;height:9px;border-radius:3px;background:var(--primary)}.budget-name strong{font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.budget-amount{font-size:9px;color:var(--text-muted);font-variant-numeric:tabular-nums}.progress{height:7px;border-radius:999px;background:#e8ebe6;overflow:hidden}.progress span{display:block;height:100%;border-radius:inherit;background:var(--primary);transform-origin:left;animation:growX .55s cubic-bezier(.2,.75,.3,1) both}.progress.warning span{background:var(--warning)}.progress.danger span{background:var(--danger)}
.table-panel{overflow:visible}.table-toolbar{padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line)}.filter-row{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.input,.select{min-height:36px;border:1px solid var(--line);border-radius:10px;background:var(--surface-raised);padding:0 10px;font-size:10px}.input:focus,.select:focus,textarea:focus{border-color:var(--primary)}.search-input{width:min(260px,44vw);padding-left:33px;background-image:radial-gradient(circle at 14px 16px, transparent 5px,var(--text-subtle) 5.5px,var(--text-subtle) 6.3px,transparent 6.8px),linear-gradient(45deg,transparent 47%,var(--text-subtle) 48%,var(--text-subtle) 57%,transparent 58%);background-size:22px 22px,8px 8px;background-repeat:no-repeat;background-position:4px 1px,18px 19px}.data-table-wrap{overflow:auto;border-top:1px solid var(--line)}.data-table{width:100%;border-collapse:collapse;min-width:720px}.data-table th,.data-table td{padding:11px 15px;text-align:left;border-bottom:1px solid color-mix(in srgb,var(--line) 86%,transparent);font-size:10px;vertical-align:middle}.data-table th{color:var(--text-muted);font-weight:750;background:var(--surface);position:sticky;top:0;z-index:2}.data-table tr[data-id]{cursor:pointer}.data-table tbody tr:hover{background:#fafbf8}.data-table .amount{text-align:right;font-variant-numeric:tabular-nums;font-weight:750}.data-table th.amount{text-align:right}.merchant{display:flex;align-items:center;gap:9px;min-width:0}.merchant-icon{width:30px;height:30px;border-radius:10px;background:var(--surface-muted);display:grid;place-items:center;font-size:10px;font-weight:850;color:var(--primary)}.merchant-copy{display:grid;min-width:0}.merchant-copy strong{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.merchant-copy span{font-size:9px;color:var(--text-subtle)}.status{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:4px 7px;font-size:9px;font-weight:750;background:var(--surface-muted);color:var(--text-muted)}.status:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.status.cleared{background:var(--primary-soft);color:var(--success)}.status.pending{background:var(--warning-soft);color:var(--warning)}.status.review{background:#edf0ee;color:#5c665f}.amount.income{color:var(--success)}.amount.expense{color:var(--text)}.table-empty{padding:34px 18px;text-align:center;color:var(--text-muted)}.table-empty strong{display:block;color:var(--text);font-size:12px;margin-bottom:4px}.table-foot{padding:10px 15px;display:flex;align-items:center;justify-content:space-between;gap:10px}.table-foot span{font-size:9px;color:var(--text-muted)}
.toolbar-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--line);background:var(--surface);border-radius:16px}.toolbar-card .summary{display:flex;gap:18px;flex-wrap:wrap}.toolbar-stat{display:grid}.toolbar-stat span{font-size:9px;color:var(--text-muted)}.toolbar-stat strong{font-size:14px;font-variant-numeric:tabular-nums}.toolbar-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.budget-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.budget-card{padding:18px;display:grid;gap:14px}.budget-card-head{display:flex;justify-content:space-between;gap:12px;align-items:start}.budget-icon{width:35px;height:35px;border-radius:12px;background:var(--surface-muted);display:grid;place-items:center;font-weight:800;color:var(--primary)}.budget-card h3{font-size:13px;margin:0}.budget-card p{font-size:9px;color:var(--text-muted);margin:3px 0 0}.budget-numbers{display:flex;justify-content:space-between;align-items:end}.budget-numbers strong{font-size:23px;letter-spacing:-.04em}.budget-numbers span{font-size:9px;color:var(--text-muted)}.budget-meta{display:flex;justify-content:space-between;font-size:9px;color:var(--text-subtle)}
.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.stat-card{padding:16px;display:grid;gap:7px}.stat-card span{font-size:9px;color:var(--text-muted)}.stat-card strong{font-size:20px;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.stat-card small{font-size:9px;color:var(--text-subtle)}
.report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.report-card{padding:18px;display:grid;gap:12px}.report-card-head{display:flex;justify-content:space-between;gap:12px}.report-card h3{margin:0;font-size:13px}.report-card p{margin:3px 0 0;font-size:10px;color:var(--text-muted)}.mini-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.mini-kpi{padding:10px;border-radius:12px;background:var(--surface-muted)}.mini-kpi span{font-size:8px;color:var(--text-muted)}.mini-kpi strong{display:block;font-size:13px;margin-top:2px}.category-list{display:grid;gap:8px}.category-row{display:grid;grid-template-columns:minmax(80px,1fr) minmax(120px,2fr) auto;gap:10px;align-items:center;font-size:9px}.category-row .track{height:6px;border-radius:99px;background:#e7eae5;overflow:hidden}.category-row .track span{display:block;height:100%;border-radius:inherit;background:var(--primary)}.category-row strong{font-size:9px;font-variant-numeric:tabular-nums}
.settings-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:14px}.settings-section{padding:18px}.settings-section h3{font-size:13px;margin:0}.settings-section>p{font-size:10px;color:var(--text-muted);margin:4px 0 15px}.field-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.field{display:grid;gap:6px}.field label{font-size:9px;font-weight:750;color:var(--text-muted)}.field input,.field select,.field textarea{width:100%;min-height:40px;border:1px solid var(--line);border-radius:10px;background:var(--surface-raised);padding:9px 10px;font-size:11px}.field textarea{min-height:88px;resize:vertical}.field.full{grid-column:1/-1}.helper{font-size:8px;color:var(--text-subtle)}.settings-actions{margin-top:14px;display:flex;justify-content:flex-end;gap:8px}.toggle-list{display:grid}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.toggle-row:last-child{border-bottom:0}.toggle-copy{display:grid}.toggle-copy strong{font-size:10px}.toggle-copy span{font-size:9px;color:var(--text-muted);margin-top:2px}.switch{position:relative;width:40px;height:23px;display:inline-block}.switch input{opacity:0;width:0;height:0}.switch span{position:absolute;inset:0;background:#d9ddd7;border-radius:999px;transition:.18s}.switch span:after{content:"";position:absolute;width:17px;height:17px;left:3px;top:3px;border-radius:50%;background:white;box-shadow:0 1px 3px rgba(0,0,0,.16);transition:.18s}.switch input:checked+span{background:var(--primary)}.switch input:checked+span:after{transform:translateX(17px)}
.activity-list{display:grid}.activity-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;padding:12px 18px;border-top:1px solid var(--line);align-items:start}.activity-icon{width:28px;height:28px;border-radius:9px;background:var(--surface-muted);display:grid;place-items:center;font-size:10px}.activity-copy strong{font-size:10px;display:block}.activity-copy span{font-size:9px;color:var(--text-muted)}.activity-time{font-size:8px;color:var(--text-subtle);white-space:nowrap}.alert-list{display:grid;gap:8px;padding:0 18px 18px}.alert-card{display:flex;align-items:start;gap:9px;padding:11px;border-radius:13px;background:var(--surface-muted)}.alert-card.warning{background:var(--warning-soft)}.alert-card strong{display:block;font-size:9px}.alert-card span{display:block;font-size:8px;color:var(--text-muted);margin-top:2px}.alert-mark{width:7px;height:7px;border-radius:50%;margin-top:4px;background:var(--warning)}
.drawer-backdrop,.modal-backdrop{position:fixed;inset:0;background:rgba(25,31,27,.34);backdrop-filter:blur(2px);z-index:80}.mobile-drawer{position:fixed;z-index:90;right:12px;left:12px;top:12px;background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-md);padding:14px;transform:translateY(-120%);transition:transform .22s ease}.mobile-drawer.open{transform:translateY(0)}.drawer-head{display:flex;align-items:center;justify-content:space-between;padding:2px 2px 10px}.drawer-nav{display:grid;gap:4px}.drawer-nav a{padding:11px 12px;border-radius:11px;font-size:12px;font-weight:700}.drawer-nav a.active{background:var(--surface-selected);color:var(--primary)}
.modal{position:fixed;z-index:100;left:50%;top:50%;transform:translate(-50%,-50%);width:min(520px,calc(100vw - 24px));max-height:min(760px,calc(100vh - 24px));overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:0 24px 90px rgba(24,31,27,.26);padding:18px}.modal-head{display:flex;align-items:start;justify-content:space-between;gap:12px;margin-bottom:15px}.modal-head h2{margin:0;font-size:16px}.modal-head p{font-size:9px;color:var(--text-muted);margin:3px 0 0}.modal-body{display:grid;gap:12px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.error-text{font-size:8px;color:var(--danger);min-height:12px}.detail-list{display:grid;gap:10px}.detail-row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:10px}.detail-row span{color:var(--text-muted)}.detail-row strong{text-align:right}.detail-amount{font-size:30px;font-weight:850;letter-spacing:-.05em;margin:8px 0}.detail-amount.income{color:var(--success)}
.command-palette{position:fixed;z-index:110;left:50%;top:14vh;transform:translateX(-50%);width:min(620px,calc(100vw - 24px));background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:0 28px 90px rgba(24,31,27,.3);overflow:hidden}.command-head{padding:13px;border-bottom:1px solid var(--line)}.command-head input{width:100%;height:42px;border:0;outline:0;background:transparent;font-size:14px}.command-results{max-height:52vh;overflow:auto;padding:6px}.command-section-label{padding:8px 10px 4px;color:var(--text-subtle);font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.command-item{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px;border:0;background:transparent;border-radius:10px;text-align:left}.command-item:hover,.command-item:focus{background:var(--surface-muted);outline:none}.command-item strong{font-size:10px}.command-item span{display:block;font-size:8px;color:var(--text-muted)}.command-item em{font-style:normal;font-size:8px;color:var(--text-subtle)}
.toast-region{position:fixed;z-index:130;right:16px;bottom:16px;display:grid;gap:8px;pointer-events:none}.toast{min-width:240px;max-width:340px;padding:11px 12px;border-radius:12px;background:var(--charcoal);color:white;box-shadow:var(--shadow-md);font-size:10px;animation:toastIn .2s ease both}.toast.success{border-left:4px solid var(--mint)}.toast.error{border-left:4px solid #ef8b80}
@keyframes pageIn{from{opacity:.55;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes growX{from{transform:scaleX(.2)}to{transform:scaleX(1)}}@keyframes toastIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (max-width:1080px){:root{--sidebar:208px}.overview-grid{grid-template-columns:1fr}.metric-stack{grid-template-columns:repeat(3,1fr);grid-template-rows:auto}.content-grid{grid-template-columns:1fr}.balance-slab{grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr)}.stat-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:820px){body{padding-bottom:70px}.app-shell{display:block;padding:0}.sidebar,.topbar{display:none}.app-column{border-radius:0;border:0;min-height:100vh}.mobile-chrome{display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:50;height:62px;padding:10px 14px;background:rgba(251,250,246,.92);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.mobile-brand{display:flex;align-items:center;gap:9px;font-size:13px}.mobile-bottom-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:8px;right:8px;bottom:max(8px,env(safe-area-inset-bottom));z-index:60;padding:5px;border-radius:18px;background:rgba(38,48,43,.95);box-shadow:0 12px 35px rgba(24,31,27,.24);backdrop-filter:blur(16px)}.mobile-bottom-nav a{display:grid;place-items:center;gap:1px;color:#aeb7b0;border-radius:13px;min-height:48px}.mobile-bottom-nav a span{font-size:14px}.mobile-bottom-nav a em{font-style:normal;font-size:8px;font-weight:700}.mobile-bottom-nav a.active{background:#f6f7f3;color:var(--charcoal)}main{padding:16px 14px 28px}.page{gap:13px}.page-head{align-items:start}.overview-grid,.content-grid,.settings-grid{grid-template-columns:1fr}.balance-slab{grid-template-columns:1fr;padding:20px;min-height:auto}.cash-segments{min-height:150px}.balance-value{font-size:39px}.metric-stack{grid-template-columns:repeat(3,1fr)}.budget-grid,.report-grid{grid-template-columns:1fr}.field-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.search-trigger{min-width:auto}.profile-copy{display:none}.table-toolbar{align-items:flex-start;flex-direction:column}.filter-row{width:100%}.search-input{width:100%}.data-table{min-width:640px}.stat-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){main{padding-inline:12px}.page-head{display:grid}.page-actions{width:100%}.page-actions .button{flex:1}.balance-slab{border-radius:20px}.balance-actions{display:grid;grid-template-columns:1fr 1fr}.cash-segments{grid-template-columns:1fr 1fr;grid-template-rows:auto}.cash-segment.primary{grid-row:auto;grid-column:1/-1}.metric-stack{grid-template-columns:1fr}.toolbar-card{align-items:flex-start;flex-direction:column}.toolbar-actions{width:100%}.toolbar-actions .button,.toolbar-actions .select{flex:1}.stat-grid{grid-template-columns:1fr 1fr}.mini-kpis{grid-template-columns:1fr}.category-row{grid-template-columns:95px 1fr auto}.panel-head{padding-inline:14px}.budget-list,.alert-list{padding-inline:14px}.chart-wrap{padding-inline:8px}.fallback-grid{grid-template-columns:1fr}.fallback-balance{font-size:34px}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
.nav-icon svg,.mobile-bottom-nav svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.mobile-bottom-nav svg{width:16px;height:16px}
