@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=Inter:wght@400;500;600;700&display=swap";:root{--bg-soft: #f8fafc;--bg-accent: #f1f5f9;--panel-white: #ffffff;--surface-dark: #111827;--nav-dark: #0f172a;--sidebar-bg: #ffffff;--sidebar-border: #e2e8f0;--sidebar-logo-bg: #eaf0f8;--sidebar-logo-fg: #1e293b;--sidebar-brand-title: #0b1220;--sidebar-brand-subtitle: #64748b;--sidebar-item-bg: transparent;--sidebar-item-border: #e2e8f0;--sidebar-item-text: #334155;--sidebar-item-hover-bg: #f8fafc;--sidebar-item-hover-border: #cbd5e1;--sidebar-item-active-bg: rgba(37, 99, 235, .12);--sidebar-item-active-border: rgba(37, 99, 235, .38);--sidebar-item-active-text: #1d4ed8;--sidebar-item-badge: #64748b;--text-main: #0b1220;--text-muted: #475569;--text-muted-soft: #94a3b8;--green-positive: #16a34a;--red-negative: #dc2626;--action-primary: #2563eb;--warning-amber: #d97706;--border-subtle: #e2e8f0;--border-strong: #cbd5e1;--shadow-soft: 0 1px 2px rgba(0, 0, 0, .05);--shadow-lift: 0 2px 8px rgba(15, 23, 42, .08);--surface-soft: #f8fafc;--surface-muted: #f8fbf8;--surface-accent: #eff6ff;--surface-accent-soft: #f7fafd;--surface-success-soft: #f5faf6;--surface-warning-soft: #fff7ed;--surface-danger-soft: #fff4f4;--surface-border-muted: #e4ece5;--surface-border-soft: #d8e6da;--overlay-scrim: rgba(15, 23, 42, .28);--ring-focus: rgba(37, 99, 235, .15);--interactive-hover-bg: #f8fafc;--interactive-hover-border: #94a3b8;--avatar-grad-from: #dbe7f6;--avatar-grad-to: #cddbef;--avatar-border: #cbd5e1;--avatar-fg: #1e293b;--icon-border: #dbe3ef;--icon-surface: #f7faf8;--brand-visa-bg: #f4f8ff;--brand-mastercard-bg: #fef7f5;--brand-amex-bg: #f2faff;--brand-revolut-bg: #f1f4f9;--brand-wise-bg: #e9f8f0;--brand-hsbc-bg: #fff4f4;--brand-barclays-bg: #ecf5ff;--brand-lloyds-bg: #edf9f2;--brand-bank-bg: #f0f8f1;--brand-wallet-bg: #eff6f9;--radius-lg: 12px;--radius-md: 10px;--font-ui: "Inter", "Segoe UI", -apple-system, sans-serif;--font-display: "Inter", "Segoe UI", -apple-system, sans-serif;--font-mono: "IBM Plex Mono", "JetBrains Mono", "SF Mono", "Menlo", monospace;--account-card-width: 292px;--account-card-height: 220px;--space-1: .25rem;--space-2: .45rem;--space-3: .625rem;--space-4: .875rem;--space-5: 1rem;--space-6: 1.25rem;--space-7: 1.75rem;--space-8: 2rem;--accent-sage: #16a34a;--accent-moss: #0f766e;--accent-blue: #2563eb;--accent-gold: #d97706;--accent-rose: #dc2626;--cat-groceries: #16a34a;--cat-utilities: #0f766e;--cat-transport: #2563eb;--cat-dining: #b45309;--cat-shopping: #7c3aed;--cat-income: #16a34a;--cat-investment: #2563eb;--cat-subscriptions: #475569;--cat-rent: #334155;--cat-healthcare: #dc2626;--cat-groceries-bg: #eaf7ef;--cat-utilities-bg: #e7f6f4;--cat-transport-bg: #eaf2ff;--cat-dining-bg: #fff3e8;--cat-shopping-bg: #f4ecff;--cat-income-bg: #e9f8f0;--cat-investment-bg: #eaf2ff;--cat-subscriptions-bg: #f1f5f9;--cat-rent-bg: #eef2f7;--cat-healthcare-bg: #fef2f2}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:var(--bg-soft);color:var(--text-main);font-family:var(--font-ui);line-height:1.4;letter-spacing:0}h1,h2,h3,h4,p{margin:0}button,input,select{font:inherit;color:inherit}.app-shell{display:grid;grid-template-columns:268px minmax(0,1fr);min-height:100vh;gap:var(--space-5);padding:var(--space-5)}.app-sidebar{background:var(--sidebar-bg);border:1px solid var(--sidebar-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-5)}.sidebar-brand{display:flex;align-items:center;gap:var(--space-3)}.sidebar-brand__logo{width:42px;height:42px;border-radius:12px;background:var(--sidebar-logo-bg);color:var(--sidebar-logo-fg);display:grid;place-items:center;font-weight:700;box-shadow:none}.sidebar-brand strong{display:block;font-size:.95rem;letter-spacing:.01em;color:var(--sidebar-brand-title)}.sidebar-brand span{color:var(--sidebar-brand-subtitle);font-size:.78rem}.sidebar-nav{display:flex;flex-direction:column;gap:var(--space-2)}.sidebar-footer{margin-top:auto}.sidebar-item{width:100%;border:1px solid var(--sidebar-item-border);background:var(--sidebar-item-bg);border-radius:10px;padding:.56rem .72rem;display:flex;align-items:center;gap:var(--space-3);color:var(--sidebar-item-text);text-align:left;cursor:pointer;transition:all .14s ease}.sidebar-item:hover{background:var(--sidebar-item-hover-bg);border-color:var(--sidebar-item-hover-border)}.sidebar-item.is-active{background:var(--sidebar-item-active-bg);border-color:var(--sidebar-item-active-border);color:var(--sidebar-item-active-text);box-shadow:none}.sidebar-item__icon{width:18px;height:18px;display:inline-flex}.sidebar-item__label{font-weight:600;font-size:.92rem}.sidebar-item__badge{margin-left:auto;font-size:.72rem;color:var(--sidebar-item-badge)}.nav-icon{display:block}.app-main{min-width:0;display:flex;flex-direction:column;gap:var(--space-5)}.mobile-nav{display:none}.top-bar{background:var(--panel-white);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:var(--space-4) var(--space-5);display:flex;align-items:center;justify-content:space-between}.top-bar h2{font-size:1.06rem;font-family:var(--font-display);font-weight:600;letter-spacing:-.01em}.top-bar p{color:var(--text-muted);margin-top:.2rem;font-size:.9rem}.top-bar__right{display:flex;align-items:center;gap:var(--space-3)}.top-bar__spacer{flex:1}.top-bar--compact{background:transparent;border:0;border-radius:0;box-shadow:none;padding:0}.page-wrap{min-width:0}.page{display:flex;flex-direction:column;gap:var(--space-6)}.page-heading{display:flex;align-items:center;justify-content:space-between}.page-heading h1{font-size:1.24rem;letter-spacing:-.012em;font-family:var(--font-display);font-weight:600}.page-heading p{margin-top:.22rem;color:var(--text-muted);max-width:68ch;font-size:.86rem}.ui-card{background:var(--panel-white);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);box-shadow:var(--shadow-soft);position:relative;overflow:hidden;transition:box-shadow .18s ease,transform .18s ease,border-color .18s ease}.ui-card--padded{padding:var(--space-5)}.ui-card:before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,#fff0,#ffffffb8,#fff0);pointer-events:none}.ui-card__header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--space-4);gap:var(--space-3)}.ui-card__title{font-size:.95rem;font-weight:700;letter-spacing:-.006em}.ui-card__subtitle{margin-top:.25rem;color:var(--text-muted);font-size:.86rem}.page-loading-card{max-width:460px}.page .ui-card:not(.panel-drawer):hover{transform:translateY(-1px);border-color:var(--border-strong);box-shadow:var(--shadow-lift)}.page>section{opacity:0;transform:translateY(4px);animation:page-section-enter .32s ease-out forwards}.page>section:nth-of-type(1){animation-delay:20ms}.page>section:nth-of-type(2){animation-delay:50ms}.page>section:nth-of-type(3){animation-delay:80ms}.page>section:nth-of-type(4){animation-delay:.11s}.page>section:nth-of-type(5){animation-delay:.14s}.page>section:nth-of-type(6){animation-delay:.17s}@keyframes page-section-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.ui-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.28rem .62rem;font-size:.75rem;font-weight:700;text-transform:capitalize;border:1px solid transparent;white-space:nowrap}.ui-badge--neutral{background:#f1f5f9;color:#475569}.ui-badge--positive{background:#16a34a1f;color:var(--green-positive);border-color:#16a34a47}.ui-badge--negative{background:#dc26261a;color:var(--red-negative);border-color:#dc262642}.ui-badge--warning{background:#d977061f;color:var(--warning-amber);border-color:#d9770647}.ui-badge--info{background:#2563eb1f;color:#1d4ed8;border-color:#2563eb4d}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-4)}.dashboard-hero-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(290px,1fr);gap:var(--space-3);align-items:stretch}.dashboard-hero-card{overflow:hidden;background:var(--panel-white)}.dashboard-hero-card__inner{padding:var(--space-5) var(--space-6);display:grid;gap:var(--space-2)}.dashboard-hero-card__eyebrow{color:var(--text-muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.dashboard-hero-card__label{color:var(--text-muted);font-size:.86rem}.dashboard-hero-card h2{font-family:var(--font-display);font-weight:700;font-size:clamp(1.65rem,1.34rem + 1.06vw,2.25rem);letter-spacing:-.02em;line-height:1.08}.dashboard-hero-card__support{color:var(--text-muted);font-size:.84rem}.dashboard-hero-card__chips{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-1)}.dashboard-hero-card__chips span{display:inline-flex;align-items:center;gap:.42rem;border:1px solid var(--border-subtle);background:#f8fafc;border-radius:999px;padding:.32rem .62rem;color:var(--text-muted);font-size:.75rem;line-height:1}.dashboard-hero-card__chips strong{color:var(--text-main);font-size:.79rem}.dashboard-pulse-card{display:grid;align-content:start;gap:var(--space-2)}.dashboard-pulse-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2)}.dashboard-pulse-subgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2)}.dashboard-pulse-divider{height:1px;background:var(--border-subtle)}.dashboard-pulse-item{border:1px solid var(--border-subtle);background:#f8fafc;border-radius:13px;padding:.58rem .66rem;display:grid;gap:.2rem}.dashboard-pulse-item span{color:var(--text-muted);font-size:.71rem;letter-spacing:.01em}.dashboard-pulse-item strong{color:var(--text-main);font-size:.9rem;line-height:1.2;overflow-wrap:anywhere}.dashboard-pulse-item--compact{padding:.46rem .56rem}.dashboard-pulse-item--compact strong{font-size:.84rem}.dashboard-pulse-note{color:var(--text-muted);font-size:.74rem}.stat-card{display:flex;flex-direction:column;gap:var(--space-2)}.stat-card__label{color:var(--text-muted);font-size:.86rem}.stat-card__value-row{display:flex;align-items:end;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.stat-card__value{font-size:clamp(1.18rem,.96rem + .75vw,1.58rem);letter-spacing:-.02em;line-height:1.08}.stat-card__change{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.72rem}.stat-card__helper{font-size:.83rem;color:var(--text-muted)}.dashboard-summary-strip{background:#f8fafc;border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:.85rem 1rem;display:grid;gap:var(--space-3);position:relative}.dashboard-summary-strip:after{content:none}.dashboard-summary-strip__meta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.dashboard-summary-strip__meta p{font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.dashboard-summary-strip__meta span{color:var(--text-muted);font-size:.78rem}.dashboard-summary-strip__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2)}.dashboard-summary-pill{background:var(--panel-white);border:1px solid var(--border-subtle);border-radius:12px;padding:.55rem .7rem;display:grid;gap:.22rem}.dashboard-summary-pill span{color:var(--text-muted);font-size:.74rem;letter-spacing:.01em}.dashboard-summary-pill strong{font-size:.96rem}.dashboard-main-grid{display:grid;gap:var(--space-4);grid-template-columns:1.55fr 1fr;align-items:start}.dashboard-main-grid .score-card{grid-column:1 / -1}.chart-card{min-height:260px}.donut-and-legend{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:var(--space-6)}.chart-legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.chart-legend li{display:grid;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:.86rem;transition:opacity .15s ease,transform .15s ease}.chart-legend li.is-active{transform:translate(2px)}.chart-legend li.is-dimmed{opacity:.45}.chart-legend strong{color:var(--text-main);font-size:.84rem}.chart-legend__chip{width:10px;height:10px;border-radius:999px}.chart-legend__chip--1{background:var(--accent-sage)}.chart-legend__chip--2{background:var(--accent-moss)}.chart-legend__chip--3{background:var(--accent-blue)}.chart-legend__chip--4{background:var(--accent-gold)}.chart-legend__chip--5{background:var(--accent-rose)}.chart-legend__chip--6{background:#8b9f90}.donut-chart-wrap{position:relative;display:inline-grid;place-items:center}.donut-chart{display:block;overflow:visible}.donut-chart__slice{transition:opacity .17s ease,stroke-width .17s ease,transform .17s ease,filter .17s ease;transform-origin:center;transform-box:fill-box}.donut-chart__slice--enter{stroke-dasharray:1;stroke-dashoffset:1;animation:donut-slice-enter .64s cubic-bezier(.2,.75,.2,1) forwards}.donut-chart__slice--enter:nth-of-type(1){animation-delay:30ms}.donut-chart__slice--enter:nth-of-type(2){animation-delay:70ms}.donut-chart__slice--enter:nth-of-type(3){animation-delay:.11s}.donut-chart__slice--enter:nth-of-type(4){animation-delay:.15s}.donut-chart__slice--enter:nth-of-type(5){animation-delay:.19s}.donut-chart__slice--enter:nth-of-type(6){animation-delay:.23s}.donut-chart__slice--enter:nth-of-type(7){animation-delay:.27s}.donut-chart__slice--enter:nth-of-type(8){animation-delay:.31s}.donut-chart--interactive .donut-chart__slice{cursor:pointer}.donut-chart__slice.is-active{transform:scale(1.035);filter:drop-shadow(0 4px 8px rgba(45,73,57,.2))}.donut-chart__slice.is-dimmed{opacity:.38}.donut-chart__center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.08rem;text-align:center;pointer-events:none;opacity:0;transform:translateY(3px);animation:donut-center-enter .3s ease-out .3s forwards}.donut-chart__label{color:var(--text-muted);font-size:.76rem;line-height:1}.donut-chart__value{font-size:1.08rem;font-weight:700;line-height:1.04;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.line-chart-wrap{width:100%}.line-chart{display:block;width:100%;height:220px}.line-chart__area{fill:#2563eb14}.line-chart__area--animated{transform-origin:50% 100%;animation:line-area-enter .48s ease-out}.line-chart__line{fill:none;stroke:#2563eb;stroke-width:1.2}.line-chart__line--animated{stroke-dasharray:1;stroke-dashoffset:1;animation:line-path-enter .76s cubic-bezier(.2,.72,.2,1) forwards}.line-chart__line--thin{stroke-width:1}.line-chart__line--benchmark{stroke:#f472b6f2;stroke-width:1.2;stroke-dasharray:1.35 .95}.line-chart__dot{fill:#2563eb}.line-chart__dot--animated{opacity:0;animation:line-dot-enter .22s ease-out .58s forwards}.line-chart__labels{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:var(--space-2);font-size:.76rem;color:var(--text-muted);margin-top:var(--space-2)}@keyframes donut-slice-enter{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes donut-center-enter{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@keyframes line-path-enter{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes line-area-enter{0%{opacity:0;transform:scaleY(.82)}to{opacity:1;transform:scaleY(1)}}@keyframes line-dot-enter{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.page>section,.donut-chart__slice--enter,.donut-chart__center,.line-chart__area--animated,.line-chart__line--animated,.line-chart__dot--animated{animation:none!important;opacity:1!important;transform:none!important;stroke-dashoffset:0!important}}.score-card{display:grid;gap:var(--space-4)}.finance-score-layout{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-4);align-items:center}.finance-score-ring-wrap{position:relative;width:148px;height:148px}.finance-score-ring{width:100%;height:100%;display:block}.finance-score-ring__track{fill:none;stroke:#2563eb2e;stroke-width:10}.finance-score-ring__value{fill:none;stroke:var(--action-primary);stroke-width:10;stroke-linecap:round;transform-origin:center;transform:rotate(-90deg);transition:stroke-dashoffset .32s ease}.finance-score-ring__center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:.12rem;text-align:center}.finance-score-ring__center strong{font-size:1.5rem;line-height:1;letter-spacing:-.015em;white-space:nowrap;font-variant-numeric:tabular-nums}.finance-score-ring__center span{color:var(--text-muted);font-size:.7rem;line-height:1;transform:translateY(.14rem);white-space:nowrap}.finance-score-pillars{display:grid;gap:var(--space-3)}.finance-score-pillar{display:grid;gap:.38rem}.finance-score-pillar__row{display:flex;align-items:center;justify-content:space-between}.finance-score-pillar__row span{color:var(--text-muted);font-size:.8rem}.finance-score-pillar__row strong{font-size:.9rem}.page-dashboard .dashboard-main-grid{grid-template-columns:minmax(0,1.45fr) minmax(320px,1fr)}.page-dashboard .dashboard-main-grid .score-card{grid-column:1 / -1}.page-dashboard .dashboard-cashflow-card{grid-column:1}.page-dashboard .dashboard-expense-card{grid-column:2}.page-dashboard .dashboard-score-card{grid-column:1 / -1}.page-dashboard .chart-card{min-height:0;padding:var(--space-4)}.page-dashboard .dashboard-line-chart .line-chart{height:164px}.page-dashboard .dashboard-line-chart .line-chart__labels{margin-top:.35rem;font-size:.72rem}.page-dashboard .dashboard-expense-card .donut-and-legend{gap:var(--space-4)}.page-dashboard .content-grid-2{gap:var(--space-3)}.dashboard-window-toggle{margin-bottom:0}.reports-hero-grid,.insights-hero-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,1fr);gap:var(--space-3);align-items:stretch}.reports-hero-card,.insights-hero-card{overflow:hidden;background:var(--panel-white)}.reports-hero-card__inner,.insights-hero-card__inner{padding:var(--space-5) var(--space-6);display:grid;gap:var(--space-2)}.reports-hero-card__eyebrow,.insights-hero-card__eyebrow{color:var(--text-muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.reports-hero-card__label,.insights-hero-card__label{color:var(--text-muted);font-size:.86rem}.reports-hero-card h2{font-family:var(--font-display);font-weight:700;font-size:clamp(1.62rem,1.32rem + 1.02vw,2.18rem);letter-spacing:-.02em;line-height:1.08}.insights-hero-card h2{font-family:var(--font-display);font-weight:600;font-size:clamp(1.24rem,1.05rem + .68vw,1.7rem);letter-spacing:-.01em;line-height:1.22}.reports-hero-card__support,.insights-hero-card__support{color:var(--text-muted);font-size:.84rem}.insights-hero-card .ui-badge{width:fit-content;justify-self:start}.reports-hero-card__chips{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-1)}.reports-hero-card__chips span{display:inline-flex;align-items:center;gap:.42rem;border:1px solid var(--border-subtle);background:#f8fafc;border-radius:999px;padding:.32rem .62rem;color:var(--text-muted);font-size:.75rem;line-height:1}.reports-hero-card__chips strong{color:var(--text-main);font-size:.79rem}.reports-pulse-card,.insights-pulse-card{display:grid;align-content:center}.reports-pulse-grid,.insights-pulse-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2)}.reports-pulse-item,.insights-pulse-item{border:1px solid var(--border-subtle);background:#f8fafc;border-radius:13px;padding:.58rem .66rem;display:grid;gap:.2rem}.reports-pulse-item span,.insights-pulse-item span{color:var(--text-muted);font-size:.71rem;letter-spacing:.01em}.reports-pulse-item strong,.insights-pulse-item strong{color:var(--text-main);font-size:.9rem;line-height:1.2}.page-reports .reports-toolbar,.page-insights .reports-toolbar{justify-content:flex-start}.page-reports .reports-toolbar .account-toolbar__actions,.page-insights .reports-toolbar .account-toolbar__actions{width:100%;justify-content:space-between;gap:var(--space-3)}.page-reports .reports-grid{grid-template-columns:minmax(0,1.45fr) minmax(320px,1fr);align-items:stretch;gap:var(--space-3)}.page-reports{gap:var(--space-5)}.page-reports .page-heading h1{font-size:1.42rem;letter-spacing:-.015em;font-family:var(--font-display);font-weight:600}.page-reports .page-heading p{margin-top:.2rem;font-size:.88rem}.page-reports .dashboard-summary-strip{padding:.75rem .9rem;gap:var(--space-2)}.page-reports .reports-summary-strip{background:#f8fafc}.page-reports .dashboard-summary-strip__grid{align-items:stretch}.page-reports .dashboard-summary-strip__meta p{font-size:.78rem}.page-reports .dashboard-summary-strip__meta span{font-size:.74rem}.page-reports .dashboard-summary-pill{padding:.48rem .62rem;gap:.16rem;min-height:58px}.page-reports .dashboard-summary-pill span{font-size:.72rem}.page-reports .dashboard-summary-pill strong{font-size:.92rem}.page-reports .reports-grid>.ui-card,.page-reports .content-grid-2>.ui-card{height:100%;display:flex;flex-direction:column}.page-reports .ui-card--padded{padding:var(--space-4)}.page-reports .ui-card__header{margin-bottom:var(--space-3)}.page-reports .ui-card__title{font-size:.95rem;letter-spacing:.005em}.page-reports .ui-card__subtitle{margin-top:.2rem;font-size:.8rem}.page-reports .ui-card__action .pill-button{padding:.34rem .72rem;font-size:.76rem}.page-reports .reports-chart-card{min-height:252px;padding:var(--space-4);transition:box-shadow .18s ease,transform .18s ease}.page-reports .reports-chart-card .ui-card__header{min-height:52px;align-items:flex-start}.page-reports .reports-chart-card:hover{transform:translateY(-1px);box-shadow:0 14px 36px #3047391a}.page-reports .reports-window-toggle,.page-reports .reports-family-toggle{margin-bottom:0;border:1px solid var(--surface-border-muted);border-radius:999px;padding:.24rem;background:var(--surface-soft)}.page-insights .reports-window-toggle,.page-insights .reports-family-toggle{margin-bottom:0;border:0;border-radius:0;padding:0;background:transparent}.page-insights{gap:var(--space-5)}.page-insights .insights-summary-strip{padding:.75rem .9rem;gap:var(--space-2)}.page-insights .insights-grid--premium{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);align-items:stretch}.page-insights .insight-card{height:100%;border-color:var(--border-subtle);background:var(--panel-white)}.page-insights .insight-card__header h3{font-size:.98rem}.page-insights .insight-card p{color:var(--text-muted);line-height:1.42}.page-insights .insight-card--featured{grid-column:1 / -1;background:var(--panel-white);border-color:var(--border-subtle)}.page-reports .reports-line-chart .line-chart{height:156px}.page-reports .reports-line-chart .line-chart__line--thin{stroke-width:1.06}.page-reports .reports-line-chart .line-chart__labels{margin-top:.28rem;font-size:.7rem}.page-reports .reports-chart-card .donut-and-legend{height:100%;gap:var(--space-4)}.page-reports .reports-chart-card>.line-chart-wrap,.page-reports .reports-chart-card>.donut-and-legend,.page-reports .reports-chart-card>.muted-copy{flex:1}.page-reports .reports-chart-card>.line-chart-wrap{display:flex;flex-direction:column;justify-content:flex-end}.page-reports .chart-legend{gap:.35rem}.page-reports .chart-legend li{grid-template-columns:10px minmax(0,1fr) auto;padding:.34rem .44rem;border-radius:10px;font-size:.82rem}.page-reports .chart-legend li.is-active{background:#f3f8f4;transform:translate(1px)}.page-reports .chart-legend strong{font-size:.8rem}.page-reports .content-grid-2{gap:var(--space-3);align-items:stretch}.page-reports .breakdown-list,.page-reports .insight-list{gap:var(--space-2)}.page-reports .breakdown-list li,.page-reports .insight-list li{padding:.75rem .85rem}.page-reports .breakdown-list span,.page-reports .insight-list span{font-size:.78rem}.page-reports .breakdown-list strong{font-size:.86rem}.page-reports .insight-list li{align-items:flex-start}.page-reports .insight-list li>div{display:grid;gap:.2rem}.page-reports .insight-list p{font-size:.86rem}.page-reports .reports-chart-card .muted-copy{margin-top:auto}.page-reports .report-detail-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2)}.page-reports .report-detail-list li{background:var(--surface-muted);border:1px solid var(--surface-border-muted);border-radius:12px;padding:.62rem .75rem;display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.page-reports .report-detail-list li>div{display:grid;gap:.2rem}.page-reports .report-detail-list p{font-size:.86rem;font-weight:650}.page-reports .report-detail-list span{color:var(--text-muted);font-size:.76rem}.page-reports .report-detail-list strong{font-size:.84rem}.report-custom-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.report-custom-card{min-height:252px}.report-custom-card .muted-copy{margin-bottom:var(--space-3)}.report-custom-kpi{border:1px solid var(--surface-border-muted);background:var(--surface-muted);border-radius:14px;padding:.75rem .85rem;display:grid;gap:.34rem}.report-custom-kpi strong{font-size:1.28rem}.report-custom-kpi span{color:var(--text-muted);font-size:.78rem}.report-custom-kpi .ui-badge{justify-self:start}.report-custom-helper{margin-top:var(--space-3)}.balance-card--compact .balance-card__body{padding:var(--space-4);gap:var(--space-2)}.balance-card__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.balance-card--compact .balance-card__body h3{font-size:1.2rem}.balance-card__sparkline .line-chart{height:64px}.dashboard-card-footer{display:flex;justify-content:flex-end;margin-top:var(--space-3)}.score-card__value-row{display:flex;align-items:center;justify-content:space-between}.score-card__value-row h3{font-size:2rem}.score-card__meta{display:flex;justify-content:space-between;color:var(--text-muted);font-size:.84rem}.score-card__meta strong{color:var(--text-main)}.muted-copy{color:var(--text-muted);font-size:.88rem}.progress-bar{width:100%;height:10px;border-radius:999px;background:#e2e8f0;overflow:hidden}.progress-bar__fill{height:100%;border-radius:999px;transition:width .22s ease}.progress-bar__fill--neutral{background:var(--action-primary)}.progress-bar__fill--success{background:var(--green-positive)}.progress-bar__fill--warning{background:var(--warning-amber)}.progress-bar__fill--danger{background:var(--red-negative)}.balance-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-4)}.balance-card__body{padding:var(--space-5);display:grid;gap:var(--space-2)}.balance-card__body p{color:var(--text-muted);font-size:.82rem}.balance-card__body h3{font-size:1.45rem}.content-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.savings-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-4)}.savings-list li{display:grid;gap:var(--space-2)}.savings-list__header,.savings-list__meta{display:flex;justify-content:space-between;font-size:.85rem}.savings-list__header span,.savings-list__meta span{color:var(--text-muted)}.activity-feed{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.activity-feed li{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:var(--space-3);align-items:start}.activity-feed__dot{width:8px;height:8px;border-radius:999px;margin-top:.38rem;background:#8faf95}.activity-feed p{font-size:.9rem;font-weight:600}.activity-feed span,.activity-feed time{color:var(--text-muted);font-size:.82rem}.card-footnote{margin-top:var(--space-4);color:var(--text-muted);font-size:.82rem}.soft-list{display:flex;flex-direction:column;gap:0;border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden}.soft-row{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:var(--space-3);align-items:center;background:var(--panel-white);border:0;border-bottom:1px solid var(--border-subtle);border-radius:0;padding:.52rem .72rem;transition:background-color .14s ease,transform .14s ease}.soft-row--selectable{grid-template-columns:auto auto minmax(0,1fr) auto auto}.soft-row:hover{background:#f8fafc;transform:none;box-shadow:none}.soft-list .soft-row:nth-child(odd){background:#fff}.soft-list .soft-row:nth-child(2n){background:#f8fafc}.soft-list .soft-row:last-child{border-bottom:0}.soft-row.is-selected{background:#eff6ff}.soft-row__check{display:grid;place-items:center}.soft-row__check input{width:16px;height:16px;accent-color:var(--action-primary)}.soft-row__leading{display:inline-flex;align-items:center}.soft-row__content{min-width:0;display:grid;gap:.15rem}.soft-row__title{font-size:.88rem;font-weight:600;letter-spacing:0}.soft-row__meta-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.soft-row__subtitle,.soft-row__meta{color:var(--text-muted);font-size:.74rem}.soft-row__trailing{text-align:right}.soft-row__actions{opacity:0;transform:translate(3px);pointer-events:none;transition:all .14s ease}.soft-row:hover .soft-row__actions{opacity:1;transform:translate(0);pointer-events:auto}.money-column{display:grid;gap:.2rem;justify-items:end}.money-column strong{font-family:var(--font-mono);font-size:.84rem;font-weight:600;text-align:right}.money-column span{color:var(--text-muted);font-family:var(--font-mono);font-size:.72rem;text-align:right}.text-positive{color:var(--green-positive)}.text-negative{color:var(--red-negative)}.text-warning{color:var(--warning-amber)}.stat-card__value,.dashboard-summary-pill strong,.account-kpi strong,.account-card__balance h3,.balance-card__body h3,.finance-score-ring__center strong,.donut-chart__value,.line-chart__labels,.report-custom-kpi strong{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.filters-card{display:grid;gap:var(--space-4)}.category-manager{display:grid;gap:var(--space-3)}.category-create-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3);align-items:end}.category-chip-list{display:flex;flex-wrap:wrap;gap:var(--space-2);max-height:220px;overflow:auto}.category-chip-list--compact{max-height:140px}.category-chip{border:1px solid var(--surface-border-soft);background:var(--surface-success-soft);color:var(--text-muted);border-radius:999px;font-size:.78rem;font-weight:600;padding:.28rem .6rem}.import-actions-row{display:grid;gap:var(--space-2)}.import-button{width:fit-content;border:1px solid var(--action-primary);background:var(--action-primary);color:#fff;border-radius:10px;padding:.52rem .96rem;font-size:.84rem;font-weight:700;cursor:pointer;transition:border-color .14s ease,background .14s ease}.import-button:hover:not(:disabled){border-color:#1d4ed8;background:#1d4ed8}.import-button:disabled{opacity:.72;cursor:not-allowed}.import-file-input{display:none}.import-columns-hint{color:var(--text-muted);font-size:.82rem}.import-columns-hint code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.79rem;color:var(--text-main)}.import-last-file{color:var(--text-muted);font-size:.82rem}.import-success{color:var(--green-positive);font-size:.84rem}.import-summary-list{margin:.35rem 0 0;padding-left:1.2rem;color:var(--text-muted);font-size:.82rem;display:grid;gap:.2rem}.import-error{color:var(--red-negative);font-size:.84rem}.filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:var(--space-3)}.transaction-create-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:var(--space-3);margin-bottom:var(--space-3)}.transaction-create-form__actions{display:flex;align-items:end}.pill-input{display:grid;gap:var(--space-1)}.pill-input__label{font-size:.72rem;color:var(--text-muted);padding-left:.1rem;font-weight:500}.pill-input__field{border-radius:10px;border:1px solid var(--border-subtle);background:var(--panel-white);min-height:36px;display:flex;align-items:center;padding:0 .6rem;gap:var(--space-2);transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}.pill-input__field:focus-within{border-color:#2563eb99;background:var(--panel-white);box-shadow:0 0 0 3px var(--ring-focus)}.pill-input__leading{display:inline-flex;color:var(--text-muted)}.pill-input__control,.pill-select__control{width:100%;border:0;background:transparent;outline:none;color:var(--text-main);min-height:34px;font-size:.84rem}.pill-input__control[type=number]{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.pill-input__control[type=number]::-webkit-inner-spin-button,.pill-input__control[type=number]::-webkit-outer-spin-button{margin:0}.pill-date-input{position:relative}.pill-date-input__control{cursor:pointer}.pill-date-input__popover{position:fixed;z-index:120;width:252px;border:1px solid var(--surface-border-soft);border-radius:12px;background:var(--panel-white);box-shadow:0 14px 30px #0f172a40;padding:.55rem;display:grid;gap:.34rem}.pill-date-input__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.pill-date-input__month{font-size:.8rem;letter-spacing:.02em;color:var(--text-main)}.pill-date-input__nav{width:24px;height:24px;border-radius:8px;border:1px solid var(--border-subtle);background:var(--surface-soft);color:var(--text-main);display:grid;place-items:center;cursor:pointer}.pill-date-input__nav:hover{border-color:var(--interactive-hover-border)}.pill-date-input__weekdays,.pill-date-input__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.2rem}.pill-date-input__weekday{font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);text-align:center}.pill-date-input__day{border:1px solid transparent;background:transparent;border-radius:8px;min-height:28px;font-size:.75rem;color:var(--text-main);cursor:pointer;font-variant-numeric:tabular-nums}.pill-date-input__day:hover:not(:disabled){border-color:var(--surface-border-soft);background:var(--surface-accent-soft)}.pill-date-input__day.is-outside{color:var(--text-muted-soft)}.pill-date-input__day.is-selected{background:var(--action-primary);border-color:#2563ebd9;color:#f8fbff;font-weight:650}.pill-date-input__day.is-today:not(.is-selected){border-color:var(--action-primary)}.pill-date-input__day:disabled{opacity:.4;cursor:not-allowed}.pill-button{border:1px solid var(--border-strong);background:var(--panel-white);color:var(--text-main);border-radius:10px;padding:.38rem .72rem;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .14s ease;box-shadow:none}.pill-button:hover{border-color:var(--interactive-hover-border);background:var(--interactive-hover-bg);transform:none;box-shadow:none}.pill-button.is-active{border-color:#2563eb73;background:#2563eb1f;color:#1d4ed8}.pill-button--danger.is-active,.pill-button--danger:hover{border-color:#dc262680;background:#dc262614;color:var(--red-negative)}.pill-button--success.is-active,.pill-button--success:hover,.pill-button--success{border-color:var(--action-primary);background:var(--action-primary);color:#fff}.pill-button:disabled{opacity:.55;cursor:not-allowed;border-color:var(--border-subtle);background:var(--surface-soft);color:var(--text-muted-soft);transform:none;box-shadow:none}.icon-button{width:34px;height:34px;border-radius:8px;border:1px solid var(--border-subtle);background:var(--panel-white);display:grid;place-items:center;cursor:pointer;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.icon-button:hover{border-color:var(--border-strong);transform:none;box-shadow:none}.icon-button:focus-visible{outline:none;box-shadow:0 0 0 3px var(--ring-focus)}.grouping-toggle{display:inline-flex;align-items:center;gap:.35rem}.bulk-bar{display:flex;align-items:center;justify-content:space-between;background:#eff6ff;border:1px solid #bfdbfe;border-radius:var(--radius-md);padding:.62rem .8rem}.bulk-bar p{font-weight:600}.bulk-bar__actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.transactions-list-wrap{display:grid;gap:var(--space-4)}.transactions-scroll-shell{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--panel-white);overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr);--transactions-scroll-offset: 18rem;max-height:min(76vh,calc(100vh - var(--transactions-scroll-offset)));max-height:min(76dvh,calc(100dvh - var(--transactions-scroll-offset)))}.transactions-scroll-body{overflow-y:auto;padding:var(--space-3);display:grid;gap:var(--space-3);align-content:start}.transactions-scroll-body::-webkit-scrollbar{width:9px}.transactions-scroll-body::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--text-muted) 40%,transparent);border-radius:999px}.transactions-scroll-body::-webkit-scrollbar-track{background:transparent}.transactions-list-header{display:flex;align-items:center;justify-content:space-between;color:var(--text-muted);font-size:.82rem;letter-spacing:.01em;text-transform:uppercase;font-weight:600}.transactions-table-head{display:grid;grid-template-columns:.8fr 1.4fr .7fr .7fr;gap:var(--space-2);background:var(--surface-soft);border-bottom:1px solid var(--border-subtle);padding:.52rem .78rem}.transactions-table-head__cell{border:0;background:transparent;color:var(--text-muted);text-align:left;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;font-weight:600;cursor:pointer;padding:0}.transactions-table-head__cell.is-active{color:var(--text-main)}.transactions-table-head__cell--numeric{text-align:right}.transactions-list-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:.35rem .1rem 0;color:var(--text-muted);font-size:.82rem}.transactions-list-footer .pill-button{white-space:nowrap}.transactions-pagination{display:inline-flex;align-items:center;gap:var(--space-2)}.select-all-button{border:1px solid var(--border-strong);background:#fff;color:var(--text-main);padding:.34rem .66rem;border-radius:10px;cursor:pointer;font-size:.76rem;font-weight:600}.select-all-button:disabled{cursor:not-allowed;opacity:.62}.select-all-button.is-active{background:#eff6ff;border-color:#93c5fd;color:#1d4ed8}.transaction-group{display:grid;gap:var(--space-2)}.transaction-group h3{font-size:.85rem;color:var(--text-muted);font-weight:600;padding:0 .15rem}.transaction-leading-icons{display:flex;align-items:center;gap:var(--space-2)}.row-action-buttons{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.row-action{border:1px solid var(--border-subtle);background:#fff;border-radius:8px;color:var(--text-muted);font-size:.72rem;font-weight:600;padding:.2rem .46rem;cursor:pointer}.row-action-link-controls{display:inline-flex;align-items:center;gap:var(--space-2);min-width:0;flex-wrap:wrap}.row-action-select{min-height:30px;min-width:190px;max-width:min(260px,42vw);border:1px solid var(--border-subtle);border-radius:8px;background:#fff;color:var(--text-main);font-size:.72rem;font-weight:500;padding:.22rem .4rem}.row-action-select:disabled{opacity:.62;cursor:not-allowed}.row-action-inline-error{flex-basis:100%;color:#dc2626;font-size:.68rem;line-height:1.25}.card-visual-grid,.savings-goal-grid,.insights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:var(--space-4)}.account-toolbar{display:flex;justify-content:flex-end}.mobile-sticky-actions{position:static}.account-toolbar__actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.account-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:var(--space-3)}.account-kpi{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:.62rem .72rem;display:grid;gap:.2rem}.account-kpi span{color:var(--text-muted);font-size:.78rem}.account-kpi strong{font-size:.98rem;letter-spacing:.006em}.account-tabs{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.account-tab-panel{display:grid;gap:var(--space-4)}.account-list-layout{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.account-list-layout__meta{display:grid;gap:.2rem}.account-list-layout__title{font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.account-list-layout__meta span{color:var(--text-muted);font-size:.82rem}.account-list-layout .grouping-toggle{border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:.2rem;background:#f8fafc}.account-tab-panel__footer{display:flex;justify-content:flex-end}.account-ledger-group{overflow:hidden}.account-ledger-group__header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-subtle);display:grid;gap:var(--space-3)}.account-ledger-group__title{display:grid;gap:.2rem}.account-ledger-group__title p{margin:0;font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.account-ledger-group__title h2{margin:0;font-size:.95rem;font-weight:600;color:var(--text-main)}.account-ledger-group__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:var(--space-3)}.account-ledger-group__stats>div{border:1px solid var(--surface-border-muted);background:var(--surface-muted);border-radius:var(--radius-md);padding:.44rem .56rem;display:grid;gap:.14rem;min-width:0}.account-ledger-group__stats span{font-size:.72rem;color:var(--text-muted)}.account-ledger-group__stats strong{font-size:.84rem;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.account-ledger-head{display:grid;grid-template-columns:minmax(210px,1.45fr) minmax(190px,1.1fr) minmax(150px,.8fr) minmax(130px,.8fr) 150px;gap:var(--space-3);align-items:center;padding:.55rem var(--space-5);border-bottom:1px solid var(--border-subtle);background:var(--surface-soft)}.account-ledger-head span{font-size:.69rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.account-ledger-head span:last-child{text-align:right}.account-ledger-rows{display:grid}.account-ledger-row{display:grid;grid-template-columns:minmax(210px,1.45fr) minmax(190px,1.1fr) minmax(150px,.8fr) minmax(130px,.8fr) 150px;gap:var(--space-3);align-items:center;padding:.72rem var(--space-5);border-bottom:1px solid var(--border-subtle);background:var(--panel-white);transition:background .14s ease}.account-ledger-row:last-child{border-bottom:0}.account-ledger-row:hover,.account-ledger-row:focus-within{background:var(--surface-soft)}.account-ledger-row.is-archived{background:var(--surface-accent-soft)}.account-ledger-row.is-archived:hover,.account-ledger-row.is-archived:focus-within{background:var(--surface-accent)}.account-ledger-row__identity{display:flex;align-items:center;gap:var(--space-3);min-width:0}.account-ledger-row__identity>div{min-width:0}.account-ledger-row__name{font-size:.92rem;font-weight:600;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-ledger-row__meta{margin-top:.14rem;display:block;color:var(--text-muted);font-size:.74rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-ledger-row__type{display:grid;gap:.22rem;justify-items:start}.account-ledger-row__type span{font-size:.74rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-ledger-row__balance{display:grid;gap:.2rem;min-width:0}.account-ledger-row__balance strong{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:.9rem;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-ledger-row__balance span{color:var(--text-muted);font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-ledger-row__trend{min-width:0}.account-ledger-sparkline .line-chart{height:40px}.account-ledger-row__actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);opacity:0;pointer-events:none;transform:translate(4px);transition:opacity .14s ease,transform .14s ease}.account-ledger-row:hover .account-ledger-row__actions,.account-ledger-row:focus-within .account-ledger-row__actions{opacity:1;pointer-events:auto;transform:translate(0)}.accounts-create-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:var(--space-3)}.accounts-create-form__actions{display:flex;align-items:end}.trade-form-help{grid-column:1 / -1;border-top:1px dashed var(--surface-border-muted);padding-top:var(--space-3);display:grid;gap:.24rem}.trade-form-help p{margin:0;font-size:.75rem;color:var(--text-muted);font-style:italic;line-height:1.4}.trade-form-help strong{color:var(--text-main);font-style:normal;font-weight:650}.trade-form-help__metrics{display:grid;gap:.2rem}.cards-create-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:var(--space-3)}.cards-pay-form{display:grid;gap:var(--space-3)}.cards-pay-summary{border:1px solid var(--surface-border-soft);background:var(--surface-success-soft);border-radius:var(--radius-md);padding:.72rem .86rem;display:grid;gap:.25rem}.cards-pay-summary p{margin:0;font-size:.92rem;font-weight:650;color:var(--text-main)}.cards-pay-summary span{color:var(--text-muted);font-size:.82rem}.cards-create-form__actions{display:flex;align-items:end}.account-card{display:grid;gap:var(--space-3);height:100%;min-width:0}.account-card--compact{align-content:stretch;grid-template-rows:minmax(46px,auto) minmax(42px,auto) minmax(0,1fr);height:var(--account-card-height);min-height:var(--account-card-height)}.account-card--interactive{cursor:pointer}.account-card--interactive:hover{border-color:var(--border-strong);box-shadow:0 16px 30px #0f172a24;transform:translateY(-1px)}.account-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-2)}.account-card__top>div{min-width:0}.account-card__top-right{display:flex;align-items:center;gap:var(--space-2)}.account-card__name{font-size:1rem;font-weight:700;letter-spacing:.008em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-card__meta{color:var(--text-muted);font-size:.8rem;display:block;margin-top:.14rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-card__balance{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-width:0}.account-card__balance h3{font-size:1.2rem;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-card--compact .account-card__balance h3{font-size:clamp(1rem,1.2vw,1.16rem);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.account-card__actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.account-card--compact .account-card__actions{margin-top:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.account-card--compact .account-card__actions .pill-button{width:100%;min-width:0;padding-inline:.55rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-card__details{border-top:1px solid var(--surface-border-muted);padding-top:var(--space-3);display:grid;gap:var(--space-3)}.account-detail-page{display:grid;gap:var(--space-3)}.account-detail-page__summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.account-detail-page__balance{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.account-detail-page__balance h3{font-size:1.35rem}.sparkline .line-chart{height:74px}.sparkline__line{fill:none;stroke:#3b82f6;stroke-width:1.5}.sparkline .line-chart__labels{display:none}.account-links{display:grid;gap:var(--space-2)}.investment-workspace{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);gap:var(--space-3)}.investment-workspace__main{overflow:hidden}.investment-workspace__overview{border-bottom:1px solid var(--border-subtle);padding:var(--space-4) var(--space-5);display:grid;gap:var(--space-3)}.investment-workspace__kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-2)}.investment-workspace__kpis>div{border:1px solid var(--surface-border-muted);background:var(--surface-muted);border-radius:var(--radius-md);padding:.48rem .58rem;display:grid;gap:.14rem}.investment-workspace__kpis span{font-size:.72rem;color:var(--text-muted)}.investment-workspace__kpis strong{font-size:.85rem;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.investment-workspace__controls{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap}.investment-workspace__control-groups{display:grid;gap:var(--space-2)}.investment-workspace__control-badges{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.investment-workspace__chart{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-subtle);display:grid;gap:var(--space-3)}.investment-workspace__chart-header{display:flex;align-items:end;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.investment-workspace__chart-header h3{font-size:.95rem}.investment-workspace__chart-header p,.investment-workspace__chart-header span{color:var(--text-muted);font-size:.78rem}.investment-portfolio-chart .line-chart{height:120px}.investment-portfolio-chart .line-chart__labels{font-size:.66rem}.investment-workspace__contribution{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2);padding:0 var(--space-5) var(--space-4);border-bottom:1px solid var(--border-subtle)}.investment-workspace__contribution>div{border:1px solid var(--surface-border-muted);background:var(--surface-muted);border-radius:var(--radius-md);padding:.46rem .56rem;display:grid;gap:.12rem}.investment-workspace__contribution span{font-size:.71rem;color:var(--text-muted)}.investment-workspace__contribution strong{font-size:.83rem;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.investment-holdings-table{overflow-x:hidden}.investment-holdings-head{display:grid;grid-template-columns:minmax(168px,1.55fr) minmax(54px,.58fr) minmax(82px,.82fr) minmax(96px,.92fr) minmax(96px,.92fr) minmax(74px,.72fr) minmax(80px,.7fr);gap:var(--space-2);align-items:center;padding:.56rem var(--space-5);border-bottom:1px solid var(--border-subtle);background:var(--surface-soft)}.investment-holdings-head>*{min-width:0}.investment-holdings-head>:not(:first-child){justify-self:end}.investment-holdings-head>:first-child{justify-self:start}.investment-holdings-head span{font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.investment-sort-button{border:0;background:transparent;text-align:right;padding:0;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);cursor:pointer}.investment-sort-button.is-active{color:var(--text-main)}.investment-holdings-head>:first-child.investment-sort-button{text-align:left}.investment-holdings-rows{display:grid}.investment-holding-row{display:grid;grid-template-columns:minmax(168px,1.55fr) minmax(54px,.58fr) minmax(82px,.82fr) minmax(96px,.92fr) minmax(96px,.92fr) minmax(74px,.72fr) minmax(80px,.7fr);gap:var(--space-2);align-items:start;padding:.64rem var(--space-5);border-bottom:1px solid var(--border-subtle);background:var(--panel-white);transition:background .14s ease;cursor:pointer}.investment-holding-row:last-child{border-bottom:0}.investment-holding-row.is-expanded{background:var(--surface-accent);box-shadow:inset 0 0 0 1px var(--surface-border-soft)}.investment-holding-row:hover,.investment-holding-row:focus-within{background:var(--surface-soft)}.investment-holding-row.is-expanded:hover,.investment-holding-row.is-expanded:focus-within{background:var(--surface-accent)}.investment-holding-row:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--ring-focus)}.investment-holding-row__identity{min-width:0;display:grid;gap:.15rem}.investment-holding-row__identity h3{font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.investment-holding-row__identity p{color:var(--text-muted);font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.investment-holding-row__identity>span{color:var(--text-muted);font-size:.74rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.investment-holding-row__number{display:grid;gap:.1rem;justify-items:end;text-align:right;padding-top:.14rem}.investment-holding-row__number strong{font-size:.84rem;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.investment-holding-row__number span{color:var(--text-muted);font-size:.72rem}.investment-holding-row__actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);cursor:default}.investment-holding-row__actions .pill-button{white-space:nowrap;min-width:68px;justify-content:center}.investment-holding-detail{display:grid;gap:var(--space-3);border-top:1px solid var(--surface-border-soft);background:var(--surface-accent-soft);padding:var(--space-4) var(--space-5)}.investment-holding-detail--inline{min-width:0;border-left:3px solid rgba(37,99,235,.45)}.investment-holding-detail__header{display:flex;align-items:start;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap}.investment-holding-detail__header h3{font-size:.92rem}.investment-holding-detail__header p{color:var(--text-muted);font-size:.76rem}.investment-holding-detail__kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:var(--space-2)}.investment-holding-detail__kpis>div{border:1px solid var(--surface-border-muted);background:var(--panel-white);border-radius:var(--radius-md);padding:.5rem .62rem;display:grid;gap:.12rem}.investment-holding-detail__kpis span{font-size:.72rem;color:var(--text-muted)}.investment-holding-detail__kpis strong{font-size:.84rem;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.investment-lot-table{display:grid;gap:var(--space-2)}.investment-lot-table__head,.investment-lot-row{display:grid;grid-template-columns:minmax(92px,1fr) .9fr .95fr 1fr 1fr;gap:var(--space-2);align-items:center}.investment-lot-table__head{color:var(--text-muted);font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.investment-lot-table__rows{display:grid;gap:var(--space-2)}.investment-lot-row{border:1px solid var(--surface-border-muted);background:var(--panel-white);border-radius:var(--radius-md);padding:.5rem .62rem;font-size:.77rem;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.investment-lot-row span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.investment-target-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap}.investment-target-header__actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.investment-target-rows{display:grid;gap:var(--space-2)}.investment-target-row{border:1px solid var(--surface-border-muted);background:var(--surface-muted);border-radius:var(--radius-md);padding:.46rem .56rem;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:var(--space-2)}.investment-target-row__label{display:grid;gap:.08rem}.investment-target-row__label strong{font-size:.8rem}.investment-target-row__label span{color:var(--text-muted);font-size:.71rem}.investment-target-row__input{display:inline-flex;align-items:center;gap:.28rem}.investment-target-row__input input{width:78px;min-height:30px;border:1px solid var(--surface-border-muted);background:var(--panel-white);border-radius:9px;color:var(--text-main);font-size:.77rem;font-family:var(--font-mono);font-variant-numeric:tabular-nums;padding:0 .42rem}.investment-target-row__input input:focus{outline:none;border-color:#2563eb99;box-shadow:0 0 0 3px var(--ring-focus)}.investment-target-row__input span{color:var(--text-muted);font-size:.72rem}.investment-rebalance{display:grid;gap:var(--space-2)}.investment-rebalance h4{font-size:.8rem}.investment-rebalance__list{margin:0;padding:0;list-style:none;display:grid;gap:var(--space-2)}.investment-rebalance__item{border:1px solid var(--surface-border-muted);background:var(--surface-muted);border-radius:var(--radius-md);padding:.48rem .56rem;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.investment-rebalance__item>div{display:grid;gap:.08rem}.investment-rebalance__item span{color:var(--text-muted);font-size:.72rem}.investment-rebalance__item strong{font-size:.8rem;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.investment-workspace__rail{display:grid;gap:var(--space-3);align-content:start}.investment-rail-card,.investment-movers{display:grid;gap:var(--space-3)}.investment-movers p{color:var(--text-muted);font-size:.78rem;margin-bottom:var(--space-2)}.investment-risk-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:var(--space-2)}.investment-risk-grid>div{border:1px solid var(--surface-border-muted);background:var(--surface-muted);border-radius:var(--radius-md);padding:.52rem .62rem;display:grid;gap:.12rem}.investment-risk-grid span{font-size:.72rem;color:var(--text-muted)}.investment-risk-grid strong{font-size:.84rem;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.investment-risk-grid small{color:var(--text-muted);font-size:.7rem}.investment-workspace__empty{padding:var(--space-5)}.investment-trade-ledger__head{display:grid;grid-template-columns:100px minmax(70px,.8fr) minmax(72px,.7fr) minmax(150px,1fr) minmax(78px,.8fr) minmax(95px,.95fr) minmax(105px,1fr);gap:var(--space-2);align-items:center;padding:.55rem 0;border-bottom:1px solid var(--border-subtle)}.investment-trade-ledger__head span{font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.investment-trade-ledger__head span:nth-child(5),.investment-trade-ledger__head span:nth-child(6),.investment-trade-ledger__head span:nth-child(7){justify-self:end}.investment-trade-ledger__rows{display:grid}.investment-trade-row{display:grid;grid-template-columns:100px minmax(70px,.8fr) minmax(72px,.7fr) minmax(150px,1fr) minmax(78px,.8fr) minmax(95px,.95fr) minmax(105px,1fr);gap:var(--space-2);align-items:center;padding:.56rem 0;border-bottom:1px solid var(--border-subtle);font-size:.8rem}.investment-trade-row:last-child{border-bottom:0}.investment-trade-row span{min-width:0;font-family:var(--font-mono);font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.investment-trade-row span:nth-child(5),.investment-trade-row span:nth-child(6),.investment-trade-row span:nth-child(7){justify-self:end;text-align:right}.account-links__label{color:var(--text-muted);font-size:.8rem;font-weight:600}.account-links__list{display:grid;gap:var(--space-2)}.account-links__item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);background:var(--surface-muted);border:1px solid var(--surface-border-muted);border-radius:12px;padding:.45rem .6rem;font-size:.8rem}.account-links__item span{color:var(--text-main)}.account-links__item--transaction{align-items:flex-start}.account-links__item--transaction span{display:grid;gap:.12rem}.account-links__item--transaction small{color:var(--text-muted);font-size:.72rem}.account-links__unlink{border:1px solid var(--border-subtle);background:var(--surface-accent-soft);color:var(--text-muted);border-radius:999px;font-size:.72rem;font-weight:600;padding:.2rem .5rem;cursor:pointer}.account-links__unlink:disabled{opacity:.72;cursor:not-allowed}.account-links__empty{color:var(--text-muted);font-size:.8rem}.account-links__actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2);align-items:end}.debt-account-panel{border:1px solid var(--surface-border-muted);background:var(--surface-muted);border-radius:14px;padding:.65rem;display:grid;gap:var(--space-2)}.debt-account-panel__header{display:flex;align-items:center;justify-content:space-between;font-size:.82rem}.debt-account-panel__header span{color:var(--text-muted)}.debt-account-panel__header strong{color:var(--text-main)}.debt-account-panel__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.debt-account-panel__item{background:var(--panel-white);border:1px solid var(--surface-border-muted);border-radius:11px;padding:.45rem .55rem;display:grid;gap:.18rem}.debt-account-panel__item span{color:var(--text-muted);font-size:.74rem}.debt-account-panel__item strong{font-size:.84rem;color:var(--text-main)}.panel-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;justify-content:center;align-items:center;padding:var(--space-5);z-index:40;animation:panel-fade-in .18s ease-out}.panel-drawer{width:min(980px,calc(100vw - 2 * var(--space-5)));max-height:min(90vh,980px);height:auto;overflow:auto;border-radius:var(--radius-lg);border:1px solid var(--border-subtle);will-change:transform;animation:panel-drawer-in .22s cubic-bezier(.2,.78,.2,1)}@keyframes panel-fade-in{0%{background:#0f172a00}to{background:var(--overlay-scrim)}}@keyframes panel-fade-out{0%{background:var(--overlay-scrim)}to{background:#0f172a00}}@keyframes panel-drawer-in{0%{transform:translateY(14px) scale(.985);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes panel-drawer-out{0%{transform:translateY(0) scale(1);opacity:1}to{transform:translateY(10px) scale(.992);opacity:0}}@keyframes panel-sheet-in{0%{transform:translateY(100%);opacity:.92}to{transform:translateY(0);opacity:1}}@keyframes panel-sheet-out{0%{transform:translateY(0);opacity:1}to{transform:translateY(100%);opacity:.92}}.panel-overlay.is-closing{animation:panel-fade-out .18s ease-in forwards}.panel-drawer.is-closing{animation:panel-drawer-out .2s cubic-bezier(.4,.06,.2,1) forwards}.panel-close{border:1px solid var(--border-strong);border-radius:10px;background:var(--panel-white);color:var(--text-main);font-size:.8rem;font-weight:600;padding:.36rem .7rem;cursor:pointer;transition:border-color .14s ease,background .14s ease,color .14s ease}.panel-close:hover{border-color:var(--interactive-hover-border);background:var(--interactive-hover-bg)}.payment-card{display:grid;gap:var(--space-4)}.payment-card__visual{border-radius:18px;padding:var(--space-4);min-height:170px;color:#e2e8f0;background:linear-gradient(145deg,#1d4ed8,#1e3a8a);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3)}.payment-card__visual p{font-size:.9rem;font-weight:600}.payment-card__visual small{color:#bfdbfe;text-transform:uppercase;letter-spacing:.06em;font-size:.67rem}.payment-card__visual h3{grid-column:1 / -1;font-size:1.26rem;letter-spacing:.06em}.payment-card__visual span{grid-column:1 / -1;color:#dbeafe;font-size:.8rem}.payment-card__meta{display:grid;gap:var(--space-3)}.payment-card__meta-row{display:flex;align-items:center;justify-content:space-between;font-size:.86rem}.payment-card__meta-row span{color:var(--text-muted)}.payment-card__actions{display:flex;justify-content:flex-end}.budget-ledger{display:grid;gap:var(--space-4)}.budget-ledger-group{overflow:hidden}.budget-ledger-group__header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-subtle);display:grid;gap:var(--space-3)}.budget-ledger-group__title{display:grid;gap:.2rem}.budget-ledger-group__title p{margin:0;font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.budget-ledger-group__title h2{margin:0;font-size:.95rem;font-weight:600;color:var(--text-main)}.budget-ledger-group__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--space-3)}.budget-ledger-group__stats>div{border:1px solid var(--surface-border-muted);background:var(--surface-muted);border-radius:var(--radius-md);padding:.44rem .56rem;display:grid;gap:.14rem;min-width:0}.budget-ledger-group__stats span{font-size:.72rem;color:var(--text-muted)}.budget-ledger-group__stats strong{font-size:.84rem;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.budget-ledger-head{display:grid;grid-template-columns:minmax(190px,1.45fr) minmax(220px,1.45fr) repeat(2,minmax(120px,.75fr)) minmax(170px,1fr) 70px;gap:var(--space-3);align-items:center;padding:.55rem var(--space-5);border-bottom:1px solid var(--border-subtle);background:var(--surface-soft)}.budget-ledger-head span{font-size:.69rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.budget-ledger-head span:last-child{text-align:right}.budget-ledger-rows{display:grid}.budget-ledger-row{display:grid;grid-template-columns:minmax(190px,1.45fr) minmax(220px,1.45fr) repeat(2,minmax(120px,.75fr)) minmax(170px,1fr) 70px;gap:var(--space-3);align-items:center;padding:.72rem var(--space-5);border-bottom:1px solid var(--border-subtle);background:var(--panel-white);transition:background .14s ease}.budget-ledger-row:last-child{border-bottom:0}.budget-ledger-row:hover,.budget-ledger-row:focus-within{background:var(--surface-soft)}.budget-ledger-row.is-alert{box-shadow:inset 2px 0 #dc262673}.budget-ledger-row__category{display:flex;align-items:center;gap:var(--space-3);min-width:0}.budget-ledger-row__category svg{flex-shrink:0}.budget-ledger-row__category>div{min-width:0}.budget-ledger-row__category h3{margin:0;font-size:.9rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.budget-ledger-row__category p{margin:.14rem 0 0;font-size:.74rem;color:var(--text-muted)}.budget-ledger-row__progress{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2);align-items:center}.budget-ledger-row__progress .progress-bar{min-width:0}.budget-ledger-row__progress span{font-size:.76rem;color:var(--text-muted);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.budget-ledger-row__value{display:grid;gap:.12rem}.budget-ledger-row__value span{font-size:.66rem;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted)}.budget-ledger-row__value strong{font-size:.84rem;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.budget-ledger-row__status{display:grid;justify-items:start;gap:.22rem;min-width:0}.budget-ledger-row__status p{margin:0;font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.budget-ledger-row__actions{display:flex;justify-content:flex-end;opacity:0;pointer-events:none;transform:translate(4px);transition:opacity .14s ease,transform .14s ease}.budget-ledger-row:hover .budget-ledger-row__actions,.budget-ledger-row:focus-within .budget-ledger-row__actions{opacity:1;pointer-events:auto;transform:translate(0)}.reports-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.breakdown-list,.insight-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3)}.breakdown-list li,.insight-list li{background:var(--surface-muted);border:1px solid var(--surface-border-muted);border-radius:14px;padding:var(--space-3);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.breakdown-list span,.insight-list span{color:var(--text-muted);font-size:.82rem}.breakdown-list strong{font-size:.9rem}.insight-list p{font-size:.9rem;font-weight:600}.savings-goal-card{display:grid;gap:var(--space-4)}.savings-goal-card__header{display:flex;align-items:center;justify-content:space-between}.savings-goal-card__header h3{font-size:1rem}.savings-goal-card__header strong{font-size:.95rem}.savings-goal-card__meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.savings-goal-card__meta-grid div{background:var(--surface-muted);border:1px solid var(--surface-border-muted);border-radius:14px;padding:.7rem .8rem;display:grid;gap:.25rem}.savings-goal-card__meta-grid span{color:var(--text-muted);font-size:.76rem}.savings-goal-card__meta-grid strong{font-size:.9rem}.savings-goal-contribution{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2);align-items:end}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.settings-mobile-toolbar,.settings-mobile-sheet-trigger{display:none}.settings-sheet-content{display:grid;gap:var(--space-3)}.settings-span-2{grid-column:span 2}.profile-card-content{display:flex;align-items:center;gap:var(--space-4)}.profile-card-content h3{font-size:1rem}.profile-card-content p,.profile-card-content span{color:var(--text-muted);font-size:.84rem}.settings-switch-list{display:grid;gap:var(--space-3)}.settings-switch{background:var(--surface-muted);border:1px solid var(--surface-border-muted);border-radius:14px;padding:.7rem .85rem;display:flex;align-items:center;justify-content:space-between}.settings-switch span{font-size:.86rem}.settings-switch input{width:38px;height:20px;accent-color:var(--action-primary)}.settings-group{display:grid;gap:var(--space-3)}.settings-inline-row{display:flex;justify-content:space-between;align-items:center;padding:.3rem .2rem;font-size:.84rem}.settings-inline-row span{color:var(--text-muted)}.settings-theme-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.settings-theme-row>div span{color:var(--text-muted);font-size:.82rem}.settings-theme-stack{display:grid;gap:var(--space-3)}.settings-projection-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3)}.settings-projection-list{display:grid;gap:var(--space-2)}.settings-theme-pill{display:inline-flex;align-items:center;justify-content:center;min-width:82px;padding:.34rem .7rem;border-radius:999px;border:1px solid var(--border-subtle);background:var(--surface-soft);color:var(--text-main);font-size:.8rem;font-weight:700;line-height:1}.settings-theme-pill--light{color:var(--action-primary);border-color:color-mix(in srgb,var(--action-primary) 34%,transparent);background:color-mix(in srgb,var(--action-primary) 12%,transparent)}.settings-theme-pill--dark{color:var(--text-main);border-color:var(--border-strong);background:var(--surface-accent)}.settings-actions{display:flex;justify-content:flex-end;margin-top:var(--space-4)}.settings-bank-brand-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3);align-items:end}.settings-bank-brand-chips{margin-top:var(--space-3);display:flex;flex-wrap:wrap;gap:var(--space-2)}.settings-bank-brand-chip{display:inline-flex;align-items:center;padding:.34rem .7rem;border-radius:999px;border:1px solid var(--surface-border-muted);background:var(--surface-soft);color:var(--text-muted);font-size:.78rem}.settings-account-brand-list{display:grid;gap:var(--space-3)}.settings-account-brand-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,1fr);gap:var(--space-3);align-items:center;padding:.75rem .8rem;border:1px solid var(--surface-border-muted);border-radius:14px;background:var(--surface-soft)}.settings-account-brand-row p{margin:0;font-size:.9rem}.settings-account-brand-row span{color:var(--text-muted);font-size:.8rem}.settings-account-brand-row__controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2);align-items:end}.insight-card{display:grid;gap:var(--space-3)}.insight-card__header{display:flex;align-items:start;justify-content:space-between;gap:var(--space-3)}.insight-card p{color:var(--text-muted);font-size:.87rem}.avatar{border-radius:50%;background:linear-gradient(140deg,var(--avatar-grad-from),var(--avatar-grad-to));border:1px solid var(--avatar-border);color:var(--avatar-fg);font-size:.82rem;font-weight:700;display:grid;place-items:center;overflow:hidden}.avatar__image{width:100%;height:100%;object-fit:cover}.brand-icon,.category-icon{border-radius:999px;display:grid;place-items:center;border:1px solid var(--icon-border)}.brand-icon{background:var(--icon-surface)}.brand-icon--visa{background:var(--brand-visa-bg)}.brand-icon--mastercard{background:var(--brand-mastercard-bg)}.brand-icon--amex{background:var(--brand-amex-bg)}.brand-icon--revolut{background:var(--brand-revolut-bg)}.brand-icon--wise{background:var(--brand-wise-bg)}.brand-icon--hsbc{background:var(--brand-hsbc-bg)}.brand-icon--barclays{background:var(--brand-barclays-bg)}.brand-icon--lloyds{background:var(--brand-lloyds-bg)}.brand-icon--bank{background:var(--brand-bank-bg)}.brand-icon--wallet{background:var(--brand-wallet-bg)}.category-icon{background:var(--surface-soft)}.category-icon--groceries{color:var(--cat-groceries);background:var(--cat-groceries-bg)}.category-icon--utilities{color:var(--cat-utilities);background:var(--cat-utilities-bg)}.category-icon--transport{color:var(--cat-transport);background:var(--cat-transport-bg)}.category-icon--dining{color:var(--cat-dining);background:var(--cat-dining-bg)}.category-icon--shopping{color:var(--cat-shopping);background:var(--cat-shopping-bg)}.category-icon--income{color:var(--cat-income);background:var(--cat-income-bg)}.category-icon--investment{color:var(--cat-investment);background:var(--cat-investment-bg)}.category-icon--subscriptions{color:var(--cat-subscriptions);background:var(--cat-subscriptions-bg)}.category-icon--rent{color:var(--cat-rent);background:var(--cat-rent-bg)}.category-icon--healthcare{color:var(--cat-healthcare);background:var(--cat-healthcare-bg)}.sidebar-footer{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.sidebar-footer__role{text-transform:uppercase}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:var(--space-5)}.auth-panel{width:min(560px,100%);display:grid;gap:var(--space-4)}.auth-brand{display:flex;align-items:center;gap:var(--space-3)}.auth-brand__logo{width:48px;height:48px;border-radius:16px;background:linear-gradient(145deg,#dbe7f6,#bfdbfe);color:#1e3a8a;display:grid;place-items:center;font-weight:700;font-size:1.2rem}.auth-brand h1{font-size:1.4rem}.auth-brand p{color:var(--text-muted);margin-top:.2rem}.auth-card{width:100%}.auth-portal-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);margin-bottom:var(--space-3)}.auth-form{display:grid;gap:var(--space-3)}.auth-submit,.admin-submit{width:100%;border:1px solid var(--action-primary);background:var(--action-primary);color:#fff;border-radius:10px;min-height:42px;font-weight:700;cursor:pointer}.auth-submit:hover:not(:disabled),.admin-submit:hover:not(:disabled){border-color:#1d4ed8;background:#1d4ed8}.auth-submit:disabled,.admin-submit:disabled{opacity:.7;cursor:not-allowed}.auth-error{color:var(--red-negative);font-size:.84rem}.auth-status{color:var(--green-positive);font-size:.84rem}.auth-mode-toggle{margin-top:var(--space-4);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.auth-mode-toggle span{color:var(--text-muted);font-size:.84rem}.auth-card__actions{margin-top:var(--space-4)}.admin-heading{display:flex;align-items:start;justify-content:space-between;gap:var(--space-4)}.admin-heading__actions{display:flex;align-items:center;gap:var(--space-2)}.admin-stats-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4)}.admin-stat-label{color:var(--text-muted);font-size:.82rem}.admin-stat-value{margin-top:.25rem;font-size:1.45rem}.admin-tab-nav{display:flex;flex-wrap:wrap;gap:var(--space-2)}.admin-list-count{color:var(--text-muted);font-size:.82rem}.admin-members-toolbar{display:grid;grid-template-columns:minmax(240px,1fr) repeat(2,minmax(160px,200px));gap:var(--space-3);margin-bottom:var(--space-4)}.admin-panel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.admin-create-form{display:grid;gap:var(--space-3)}.admin-error{color:var(--red-negative);font-size:.83rem}.admin-message{margin-top:var(--space-2);margin-bottom:var(--space-2);color:var(--text-muted);font-size:.83rem}.admin-user-tags{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:end}.admin-action-menu{position:relative}.admin-action-menu__trigger{list-style:none;cursor:pointer;border:1px solid var(--border-subtle);border-radius:10px;min-height:32px;padding:0 var(--space-3);display:inline-flex;align-items:center;font-size:.8rem;font-weight:600;color:var(--text-main);background:var(--panel-white)}.admin-action-menu__trigger::-webkit-details-marker{display:none}.admin-action-menu__panel{position:absolute;right:0;z-index:4;margin-top:var(--space-2);min-width:170px;display:grid;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--panel-white);box-shadow:var(--shadow-lift)}.admin-role-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.admin-role-kpi{border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-3);background:color-mix(in srgb,var(--panel-white) 92%,transparent);display:grid;gap:.3rem}.admin-role-kpi span{color:var(--text-muted);font-size:.78rem}.admin-role-kpi strong{font-size:1.2rem}.admin-role-matrix{margin:0;padding:0;list-style:none;display:grid;gap:var(--space-3)}.admin-role-matrix li{border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-3);background:color-mix(in srgb,var(--panel-white) 92%,transparent);display:grid;gap:.4rem}.admin-role-matrix span{color:var(--text-muted);font-size:.84rem}.admin-security-log{margin:0;padding:0;list-style:none;display:grid;gap:var(--space-3)}.admin-security-log li{border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-3);background:color-mix(in srgb,var(--panel-white) 92%,transparent);display:grid;gap:.25rem}.admin-security-log span,.admin-security-log time{color:var(--text-muted);font-size:.82rem}.empty-state{color:var(--text-muted);font-size:.86rem;padding:var(--space-3) var(--space-2)}.page-admin .soft-row__meta-row{align-items:start}.page-admin .soft-row__subtitle,.page-admin .soft-row__meta{white-space:normal;overflow-wrap:anywhere}@media(prefers-color-scheme:dark){:root{--bg-soft: #0f172a;--bg-accent: #111827;--panel-white: #111827;--surface-dark: #0b1220;--nav-dark: #0b1220;--sidebar-bg: #0b1220;--sidebar-border: #1e293b;--sidebar-logo-bg: #1e293b;--sidebar-logo-fg: #e2e8f0;--sidebar-brand-title: #f1f5f9;--sidebar-brand-subtitle: #94a3b8;--sidebar-item-bg: transparent;--sidebar-item-border: #1e293b;--sidebar-item-text: #cbd5e1;--sidebar-item-hover-bg: #111f38;--sidebar-item-hover-border: #334155;--sidebar-item-active-bg: rgba(37, 99, 235, .24);--sidebar-item-active-border: rgba(37, 99, 235, .5);--sidebar-item-active-text: #dbeafe;--sidebar-item-badge: #94a3b8;--text-main: #e2e8f0;--text-muted: #94a3b8;--text-muted-soft: #64748b;--border-subtle: #1e293b;--border-strong: #334155;--shadow-soft: 0 1px 2px rgba(2, 6, 23, .45);--shadow-lift: 0 2px 8px rgba(2, 6, 23, .45);--surface-soft: #0f1b33;--surface-muted: #0f1b33;--surface-accent: #13213b;--surface-accent-soft: #13213b;--surface-success-soft: #102737;--surface-warning-soft: #2c2315;--surface-danger-soft: #2d1620;--surface-border-muted: #22314d;--surface-border-soft: #24344f;--overlay-scrim: rgba(2, 6, 23, .58);--ring-focus: rgba(37, 99, 235, .25);--interactive-hover-bg: #13213b;--interactive-hover-border: #334155;--avatar-grad-from: #1d2f47;--avatar-grad-to: #142238;--avatar-border: #334155;--avatar-fg: #dbeafe;--icon-border: #22314d;--icon-surface: #0f1b33;--brand-visa-bg: #17243f;--brand-mastercard-bg: #3a1f2a;--brand-amex-bg: #123047;--brand-revolut-bg: #1a2638;--brand-wise-bg: #123628;--brand-hsbc-bg: #3d1b26;--brand-barclays-bg: #112c4a;--brand-lloyds-bg: #123629;--brand-bank-bg: #1a2f2a;--brand-wallet-bg: #1b2c3b;--cat-groceries-bg: #123629;--cat-utilities-bg: #123439;--cat-transport-bg: #142b4d;--cat-dining-bg: #402d1c;--cat-shopping-bg: #2d2147;--cat-income-bg: #14362a;--cat-investment-bg: #142b4d;--cat-subscriptions-bg: #1b2a40;--cat-rent-bg: #1a273b;--cat-healthcare-bg: #3a1d27}body{background:var(--bg-soft)}.app-main,.page-wrap{color:var(--text-main)}.top-bar,.ui-card{background:var(--panel-white);border-color:var(--border-subtle)}.soft-list{border-color:var(--border-subtle)}.soft-list .soft-row:nth-child(odd),.soft-list .soft-row:nth-child(2n),.soft-row{background:#0f1b33;border-bottom-color:var(--border-subtle)}.transactions-scroll-shell{background:#0f1b33;border-color:var(--border-subtle)}.soft-row:hover{background:#13213b}.pill-input__field,.pill-button,.select-all-button,.row-action,.transactions-table-head{background:#0f1b33;border-color:var(--border-subtle);color:var(--text-main)}.pill-button.is-active{background:#2563eb42;border-color:#2563eb80;color:#dbeafe}.ui-badge--neutral{background:#17253f;border-color:#334155;color:#cbd5e1}.pill-button:hover:not(:disabled){background:#13213b;border-color:#334155;color:var(--text-main)}.dashboard-summary-pill,.account-kpi,.report-custom-kpi,.dashboard-summary-strip,.page-reports .reports-summary-strip,.page-insights .insights-summary-strip{background:#0f1b33;border-color:var(--border-subtle)}.dashboard-pulse-item,.reports-pulse-item,.insights-pulse-item,.investment-workspace__kpis>div,.investment-risk-grid>div{background:#0f1b33;border-color:var(--border-subtle)}.dashboard-hero-card__chips span,.reports-hero-card__chips span{background:#0f1b33;border-color:var(--border-subtle);color:var(--text-muted)}.dashboard-hero-card__chips strong,.reports-hero-card__chips strong{color:var(--text-main)}.account-list-layout .grouping-toggle,.page-reports .reports-window-toggle,.page-reports .reports-family-toggle{background:#0f1b33;border-color:var(--border-subtle)}.panel-close{background:#0f1b33;border-color:var(--border-subtle);color:var(--text-main)}.panel-close:hover{background:#13213b;border-color:#334155}.investment-target-row__input input{background:#0f1b33;border-color:var(--border-subtle);color:var(--text-main)}.pill-input__field:focus-within{background:#0f1b33}.page-insights .insight-card--featured{background:#0f1b33;border-color:#334155}.page-reports .breakdown-list li,.page-reports .report-detail-list li,.page-reports .insight-list li{background:#0f1b33;border-color:var(--border-subtle)}.finance-score-ring__track{stroke:#1b2a46}.finance-score-ring__value{stroke:#3b82f6}.sparkline__line{stroke:#60a5fa}.progress-bar{background:#1b2a46}.mobile-nav{background:#0f1b33e6;border-color:var(--border-subtle)}.mobile-nav__item{color:var(--text-muted)}.mobile-nav__item.is-active{color:#dbeafe;background:#2563eb3d;border-color:#2563eb80}}@media(max-width:1220px){.dashboard-hero-grid,.reports-hero-grid,.insights-hero-grid,.dashboard-main-grid,.admin-panel-grid,.admin-stats-row,.reports-grid,.settings-grid,.content-grid-2{grid-template-columns:1fr}.settings-span-2{grid-column:auto}.settings-bank-brand-form,.settings-account-brand-row,.settings-account-brand-row__controls,.admin-members-toolbar{grid-template-columns:1fr}.admin-heading{flex-direction:column;align-items:stretch}.donut-and-legend{grid-template-columns:1fr;justify-items:center}.chart-legend{width:100%}.dashboard-summary-strip__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-score-layout{grid-template-columns:1fr;justify-items:center}.finance-score-pillars{width:100%}.dashboard-pulse-grid,.dashboard-pulse-subgrid,.reports-pulse-grid,.insights-pulse-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-reports .reports-grid{grid-template-columns:minmax(0,1.22fr) minmax(280px,1fr)}.page-reports .content-grid-2,.page-reports .report-custom-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-reports .dashboard-summary-strip__grid{grid-template-columns:repeat(4,minmax(0,1fr))}.account-ledger-head,.account-ledger-row{grid-template-columns:minmax(180px,1.35fr) minmax(165px,1fr) minmax(130px,.8fr) minmax(110px,.72fr) 126px}.investment-workspace{grid-template-columns:1fr}.investment-workspace__contribution{grid-template-columns:repeat(2,minmax(0,1fr))}.investment-holdings-head,.investment-holding-row{grid-template-columns:minmax(150px,1.2fr) minmax(52px,.62fr) minmax(76px,.76fr) minmax(88px,.82fr) minmax(88px,.82fr) minmax(70px,.68fr) minmax(76px,.66fr)}.investment-trade-ledger__head,.investment-trade-row{grid-template-columns:90px minmax(62px,.72fr) minmax(65px,.65fr) minmax(130px,1fr) minmax(68px,.72fr) minmax(86px,.85fr) minmax(92px,.95fr)}.budget-ledger-head,.budget-ledger-row{grid-template-columns:minmax(170px,1.2fr) minmax(180px,1.2fr) repeat(2,minmax(104px,.7fr)) minmax(150px,.9fr) 62px}}@media(max-width:980px){.app-shell{grid-template-columns:1fr;padding:var(--space-4) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom));gap:var(--space-3)}.app-sidebar{display:none}.top-bar{padding:var(--space-4) var(--space-5)}.top-bar--compact{padding:0}.app-main{padding-bottom:calc(84px + env(safe-area-inset-bottom));gap:var(--space-4)}.mobile-nav{position:fixed;left:var(--space-4);right:var(--space-4);bottom:calc(var(--space-3) + env(safe-area-inset-bottom));z-index:30;display:flex;align-items:stretch;gap:.32rem;overflow-x:auto;padding:.34rem;border-radius:14px;border:1px solid var(--border-subtle);background:color-mix(in srgb,var(--panel-white) 88%,transparent);box-shadow:var(--shadow-lift);-webkit-overflow-scrolling:touch;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.mobile-nav::-webkit-scrollbar{display:none}.mobile-nav__item{border:1px solid transparent;background:transparent;color:var(--text-muted);border-radius:10px;min-height:50px;min-width:74px;padding:.38rem .52rem;display:grid;justify-items:center;align-content:center;gap:.12rem;flex:0 0 auto;cursor:pointer;transition:background .14s ease,border-color .14s ease,color .14s ease}.mobile-nav__item span{font-size:.64rem;font-weight:600;line-height:1;white-space:nowrap}.mobile-nav__item.is-active{color:var(--action-primary);background:color-mix(in srgb,var(--action-primary) 12%,transparent);border-color:color-mix(in srgb,var(--action-primary) 32%,transparent)}.mobile-sticky-actions{position:sticky;top:calc(var(--space-3) + env(safe-area-inset-top));z-index:14;justify-content:flex-start;padding:.34rem;border:1px solid var(--border-subtle);border-radius:12px;background:color-mix(in srgb,var(--panel-white) 90%,transparent);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.mobile-sticky-actions .account-toolbar__actions{width:100%;display:flex;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:var(--space-2);padding-bottom:.08rem}.mobile-sticky-actions .account-toolbar__actions>*{flex:0 0 auto}.mobile-sticky-actions .account-toolbar__actions::-webkit-scrollbar{display:none}.settings-mobile-toolbar{display:flex}.settings-mobile-sheet-trigger{display:flex;justify-content:flex-start;margin-bottom:var(--space-2)}.page-settings .settings-grid{gap:var(--space-3)}.page-settings .settings-span-2 .settings-sheet-content{display:none}.panel-overlay{justify-content:flex-end;align-items:flex-end;padding:0}.panel-drawer{width:100%;max-width:none;max-height:min(92vh,calc(100dvh - env(safe-area-inset-top) - var(--space-2)));border-radius:18px 18px 0 0;border-left:0;border-right:0;border-bottom:0;animation:panel-sheet-in .22s cubic-bezier(.22,.78,.2,1);padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom))}.panel-drawer.is-closing{animation:panel-sheet-out .2s cubic-bezier(.4,.06,.2,1) forwards}.page-reports .reports-grid,.page-reports .content-grid-2,.page-reports .report-custom-grid{grid-template-columns:1fr}.page-reports .dashboard-summary-strip__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-hero-card__inner{padding:var(--space-5)}.chart-card{min-height:0}.reports-hero-card__inner,.insights-hero-card__inner{padding:var(--space-5)}.page-insights .insights-grid--premium{grid-template-columns:1fr}.page-reports .reports-toolbar .account-toolbar__actions,.page-insights .reports-toolbar .account-toolbar__actions{justify-content:flex-start}.page-reports .reports-window-toggle,.page-reports .reports-family-toggle,.page-insights .reports-window-toggle,.page-insights .reports-family-toggle{width:auto;max-width:100%;flex:0 0 auto;white-space:nowrap}.investment-workspace__overview,.investment-workspace__chart{padding:var(--space-4)}.investment-workspace__contribution{padding:0 var(--space-4) var(--space-4)}.investment-holdings-head{display:none}.investment-holdings-table{overflow-x:visible}.investment-holdings-rows,.investment-holding-detail--inline{min-width:0}.investment-holding-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"identity actions" "qty price" "value pnl" "allocation allocation";padding:.68rem var(--space-4);gap:var(--space-2);align-items:start}.investment-holding-row__identity{grid-area:identity}.investment-holding-row__actions{grid-area:actions;display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap}.investment-holding-row__number--qty{grid-area:qty}.investment-holding-row__number--price{grid-area:price}.investment-holding-row__number--value{grid-area:value}.investment-holding-row__number--pnl{grid-area:pnl}.investment-holding-row__number--allocation{grid-area:allocation}.investment-lot-table__head{display:none}.investment-lot-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.investment-trade-ledger__head{display:none}.investment-trade-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);padding:.62rem 0}.account-ledger-head{display:none}.account-ledger-group__header{padding:var(--space-4)}.account-ledger-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"identity actions" "type type" "balance trend";gap:var(--space-2);align-items:start;padding:.72rem var(--space-4)}.account-ledger-row__identity{grid-area:identity}.account-ledger-row__type{grid-area:type}.account-ledger-row__balance{grid-area:balance}.account-ledger-row__trend{grid-area:trend}.account-ledger-row__actions{grid-area:actions;opacity:1;pointer-events:auto;transform:none}.budget-ledger-head{display:none}.budget-ledger-group__header{padding:var(--space-4)}.budget-ledger-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"category actions" "progress progress" "planned actual" "status status";gap:var(--space-2);align-items:start;padding:.72rem var(--space-4)}.budget-ledger-row__category{grid-area:category}.budget-ledger-row__progress{grid-area:progress}.budget-ledger-row__value--planned{grid-area:planned}.budget-ledger-row__value--actual{grid-area:actual}.budget-ledger-row__status{grid-area:status}.budget-ledger-row__actions{grid-area:actions;opacity:1;pointer-events:auto;transform:none}}@media(max-width:680px){.sidebar-nav{grid-template-columns:1fr}.page-heading h1{font-size:1.25rem}.soft-row{grid-template-columns:auto minmax(0,1fr);gap:var(--space-2)}.soft-row--selectable{grid-template-columns:auto auto minmax(0,1fr)}.soft-row__trailing,.soft-row__actions{grid-column:2;justify-self:start;text-align:left}.soft-row--selectable .soft-row__trailing,.soft-row--selectable .soft-row__actions{grid-column:3}.row-action-buttons{flex-wrap:wrap}.category-create-form,.transaction-create-form{grid-template-columns:1fr}.account-toolbar__actions,.account-tabs{width:100%}.account-list-layout{align-items:stretch}.account-list-layout .grouping-toggle{width:100%;justify-content:flex-start}.account-card__actions{flex-direction:column;align-items:stretch}.account-ledger-group__stats{grid-template-columns:repeat(2,minmax(0,1fr))}.account-ledger-row{grid-template-columns:1fr;grid-template-areas:"identity" "type" "balance" "trend" "actions"}.account-ledger-row__actions{justify-content:flex-start;flex-wrap:wrap}.account-ledger-row__type span,.account-ledger-row__balance span{white-space:normal;overflow:visible;text-overflow:clip}.budget-ledger-group__stats{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-ledger-row__status p{white-space:normal;overflow:visible;text-overflow:clip}.panel-overlay{padding:0}.panel-drawer{width:100%;max-height:min(95vh,calc(100dvh - env(safe-area-inset-top)));border-radius:16px 16px 0 0}.mobile-sticky-actions{top:calc(var(--space-2) + env(safe-area-inset-top));border-radius:10px;padding:.28rem}.account-links__actions,.debt-account-panel__grid,.savings-goal-card__meta-grid,.investment-workspace__kpis,.investment-risk-grid{grid-template-columns:1fr}.investment-workspace__controls{align-items:stretch}.investment-workspace__control-groups,.investment-workspace__control-badges{width:100%}.investment-workspace__contribution,.investment-target-row{grid-template-columns:1fr}.investment-target-header__actions{width:100%}.investment-holding-row{grid-template-columns:1fr;grid-template-areas:"identity" "qty" "price" "value" "pnl" "allocation" "actions"}.investment-holding-row__actions{justify-content:flex-start;flex-wrap:wrap}.investment-trade-row{grid-template-columns:1fr}.bulk-bar{flex-direction:column;align-items:start;gap:var(--space-3)}.dashboard-summary-strip__meta{display:grid;justify-items:start;gap:.15rem}.dashboard-summary-strip__grid,.dashboard-pulse-grid,.dashboard-pulse-subgrid,.reports-pulse-grid,.insights-pulse-grid{grid-template-columns:1fr}.transactions-table-head{grid-template-columns:1fr auto}.transactions-table-head__cell:nth-child(1),.transactions-table-head__cell:nth-child(4){display:none}}@media(max-width:980px){.page-transactions .account-toolbar,.page-accounts .account-toolbar,.page-budgets .account-toolbar,.page-cards .account-toolbar,.page-savings-plans .account-toolbar,.page-settings .account-toolbar,.page-reports .account-toolbar,.page-insights .account-toolbar{justify-content:flex-start}.page-transactions .account-toolbar__actions,.page-accounts .account-toolbar__actions,.page-budgets .account-toolbar__actions,.page-cards .account-toolbar__actions,.page-savings-plans .account-toolbar__actions,.page-settings .account-toolbar__actions,.page-reports .account-toolbar__actions,.page-insights .account-toolbar__actions,.page-accounts .account-tabs,.page-transactions .grouping-toggle{width:100%;display:flex;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:var(--space-2);padding-bottom:.15rem}.page-transactions .account-toolbar__actions::-webkit-scrollbar,.page-accounts .account-toolbar__actions::-webkit-scrollbar,.page-budgets .account-toolbar__actions::-webkit-scrollbar,.page-cards .account-toolbar__actions::-webkit-scrollbar,.page-savings-plans .account-toolbar__actions::-webkit-scrollbar,.page-settings .account-toolbar__actions::-webkit-scrollbar,.page-reports .account-toolbar__actions::-webkit-scrollbar,.page-insights .account-toolbar__actions::-webkit-scrollbar,.page-accounts .account-tabs::-webkit-scrollbar,.page-transactions .grouping-toggle::-webkit-scrollbar{display:none}.page-transactions .account-kpis,.page-accounts .account-kpis,.page-transactions .filters-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-transactions .transactions-list-wrap{gap:var(--space-3)}.page-transactions .transactions-scroll-shell{max-height:none;border:0;background:transparent;overflow:visible}.page-transactions .transactions-scroll-body{overflow-y:visible;padding:0}.page-transactions .transactions-list-header{display:grid;justify-items:start;gap:var(--space-2)}.page-transactions .transactions-list-footer{display:grid;gap:var(--space-2)}.page-transactions .transactions-pagination{width:100%;flex-wrap:wrap;justify-content:flex-start}.page-transactions .transactions-pagination .pill-button{flex:1 1 160px}.page-transactions .soft-list{border:0;border-radius:0;gap:var(--space-2);overflow:visible}.page-transactions .soft-list .transaction-soft-row:nth-child(odd),.page-transactions .soft-list .transaction-soft-row:nth-child(2n){background:var(--panel-white)}.page-transactions .transaction-soft-row{border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:.66rem .72rem}.page-transactions .transaction-soft-row .soft-row__actions{opacity:1;pointer-events:auto;transform:none}.page-transactions .transaction-soft-row .row-action-buttons{width:100%;justify-content:flex-start}.page-transactions .transaction-soft-row .row-action{min-height:32px;padding:.22rem .52rem}.page-accounts .account-list-layout{align-items:stretch}.page-accounts .account-list-layout .grouping-toggle{width:100%;justify-content:flex-start}.page-accounts .account-ledger-group{overflow:visible}.page-accounts .account-ledger-rows{display:grid;gap:var(--space-2);padding:var(--space-3)}.page-accounts .account-ledger-row{border:1px solid var(--border-subtle);border-radius:var(--radius-md);border-bottom:1px solid var(--border-subtle);background:var(--panel-white);padding:.66rem .72rem}.page-accounts .account-ledger-row:last-child{border-bottom:1px solid var(--border-subtle)}}@media(max-width:680px){.page-transactions .filters-grid,.page-transactions .account-kpis,.page-accounts .account-kpis{grid-template-columns:1fr}.page-transactions .transaction-soft-row .row-action-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.page-transactions .transaction-soft-row .row-action-link-controls{grid-column:1 / -1;width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto}.page-transactions .transaction-soft-row .row-action-inline-error{grid-column:1 / -1}.page-transactions .transaction-soft-row .row-action-select{min-width:0;max-width:none;width:100%}.page-transactions .transaction-soft-row .row-action{width:100%;text-align:center}}
