@import"https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,500;12..96,600;12..96,700&family=Hanken+Grotesk:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap";:root{color-scheme:dark;--paper: #14130f;--paper-2: #1c1a14;--panel: #1b1914;--panel-strong: #1b1914;--panel-soft: #221f18;--panel-glass: rgba(27, 25, 20, .72);--ink: #f4f1ea;--text: #f4f1ea;--muted: #a59c8c;--faint: #6f6757;--line: rgba(244, 241, 234, .13);--line-soft: rgba(244, 241, 234, .07);--skeleton: rgba(244, 241, 234, .09);--scrollbar-thumb: rgba(244, 241, 234, .16);--scrollbar-thumb-hover: rgba(244, 241, 234, .3);--border: rgba(244, 241, 234, .13);--border-strong: rgba(31, 158, 115, .5);--vault: #1f9e73;--vault-ink: #07140f;--vault-soft: rgba(31, 158, 115, .14);--clay: #e0653f;--clay-soft: rgba(224, 101, 63, .14);--gold: #e0ad5b;--gold-soft: rgba(224, 173, 91, .13);--vault-line: rgba(31, 158, 115, .42);--gold-line: rgba(224, 173, 91, .4);--clay-line: rgba(224, 101, 63, .4);--emerald: var(--vault);--emerald-2: var(--vault);--amber: var(--gold);--red: var(--clay);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--radius-2xl: 28px;--radius-pill: 999px;--radius: var(--radius-xl);--shadow-soft: 0 1px 3px rgba(0, 0, 0, .4), 0 1px 2px rgba(0, 0, 0, .28);--shadow-card: 0 6px 18px rgba(0, 0, 0, .46), 0 2px 6px rgba(0, 0, 0, .3);--shadow-raised: 0 12px 32px rgba(0, 0, 0, .52), 0 3px 10px rgba(0, 0, 0, .34);--shadow-modal: 0 26px 70px rgba(0, 0, 0, .62), 0 6px 20px rgba(0, 0, 0, .42);--shadow: var(--shadow-soft);--text-xs: .6875rem;--text-sm: .8125rem;--text-base: .875rem;--text-md: .9375rem;--text-lg: 1.125rem;--text-xl: 1.5rem;--text-2xl: 2rem;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--space-1: .25rem;--space-1-5: .375rem;--space-2: .5rem;--space-2-5: .625rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--ease-smooth: cubic-bezier(.4, 0, .2, 1);--ease-spring: cubic-bezier(.16, 1, .3, 1);--duration-fast: .15s;--duration-base: .25s;--duration-slow: .4s;--display: "Bricolage Grotesque", ui-sans-serif, system-ui, sans-serif;--mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;font-family:Hanken Grotesk,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=light]{color-scheme:light;--paper: #fbfaf6;--paper-2: #f3f1ea;--panel: #ffffff;--panel-strong: #ffffff;--panel-soft: #f6f4ee;--panel-glass: rgba(255, 255, 255, .72);--ink: #17150f;--text: #17150f;--muted: #6e665a;--faint: #9a9182;--line: rgba(23, 21, 15, .12);--line-soft: rgba(23, 21, 15, .07);--skeleton: rgba(23, 21, 15, .07);--scrollbar-thumb: rgba(23, 21, 15, .2);--scrollbar-thumb-hover: rgba(23, 21, 15, .34);--border: rgba(23, 21, 15, .12);--border-strong: rgba(12, 92, 63, .45);--vault: #0c5c3f;--vault-ink: #f4f3ee;--vault-soft: rgba(12, 92, 63, .08);--clay: #b23a1e;--clay-soft: rgba(178, 58, 30, .08);--gold: #946514;--gold-soft: rgba(148, 101, 20, .1);--vault-line: rgba(12, 92, 63, .32);--gold-line: rgba(148, 101, 20, .32);--clay-line: rgba(178, 58, 30, .3);--shadow-soft: 0 1px 3px rgba(23, 21, 15, .06), 0 1px 2px rgba(23, 21, 15, .04);--shadow-card: 0 4px 12px rgba(23, 21, 15, .07), 0 1px 3px rgba(23, 21, 15, .05);--shadow-raised: 0 8px 24px rgba(23, 21, 15, .09), 0 2px 6px rgba(23, 21, 15, .05);--shadow-modal: 0 20px 60px rgba(23, 21, 15, .14), 0 4px 16px rgba(23, 21, 15, .07);--shadow: var(--shadow-soft)}.balance-card h2,.score-pill strong,.mini-stat strong,.metric-card strong,.safe-row strong,.amount,.stat-value,.bar-row strong,.payee-amount,.review-preview-amount,.budget-line-money strong,.figure{font-family:var(--mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;letter-spacing:-.01em;overflow-wrap:anywhere;min-width:0}*{box-sizing:border-box}html{min-height:100%;background:var(--paper)}body{margin:0;color:var(--text);background:var(--paper);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-pill);border:2px solid transparent;background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover);background-clip:padding-box}h1,h2,h3{font-family:var(--display);font-weight:600;letter-spacing:-.015em}button,input,select,textarea{font:inherit}button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:1px solid var(--vault);min-height:44px;border-radius:var(--radius-md);padding:.62rem 1rem;background:var(--vault);color:var(--vault-ink);font-family:inherit;font-weight:var(--weight-semibold);font-size:var(--text-md);cursor:pointer;box-shadow:none;transition:transform var(--duration-fast) var(--ease-smooth),opacity var(--duration-fast) var(--ease-smooth),background var(--duration-fast) var(--ease-smooth),border-color var(--duration-fast) var(--ease-smooth)}button>svg{flex:0 0 auto}.icon-button{width:42px;min-width:42px;padding:0;gap:0}button:hover{opacity:.92}button:active{transform:scale(.985)}button:disabled{cursor:not-allowed;opacity:.6;background:var(--panel-soft);color:var(--muted);border-color:var(--border);box-shadow:none;transform:none}button.secondary{background:var(--panel);color:var(--ink);border:1px solid var(--line);box-shadow:none}button.ghost{background:transparent;color:var(--ink);border:1px solid var(--line);box-shadow:none}button.danger{background:var(--clay-soft);color:var(--clay);border:1px solid rgba(178,58,30,.32);box-shadow:none}button.secondary:hover,button.ghost:hover{opacity:1;background:var(--panel-soft);border-color:var(--border-strong)}button.danger:hover{opacity:1;border-color:var(--clay-line)}input,select,textarea{width:100%;min-height:42px;border:1px solid var(--line);border-radius:var(--radius-md);padding:.6rem .8rem;background:var(--panel);color:var(--text);outline:none;transition:border-color var(--duration-fast) var(--ease-smooth),box-shadow var(--duration-fast) var(--ease-smooth)}input[type=password]::-ms-reveal,input[type=password]::-ms-clear{display:none}input[type=password]::-webkit-credentials-auto-fill-button,input[type=password]::-webkit-strong-password-auto-fill-button{visibility:hidden;pointer-events:none;position:absolute;right:0}select option{color:var(--text);background:var(--panel)}input:focus,select:focus,textarea:focus{border-color:var(--vault);box-shadow:0 0 0 3px var(--vault-soft)}button:focus-visible,a:focus-visible,.nav-item:focus-visible,.chip:focus-visible,[role=button]:focus-visible{outline:2px solid var(--vault);outline-offset:2px}h1,h2,h3,p{margin:0}.auth-screen{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;padding:1rem;align-content:start;max-width:1280px;margin:0 auto}.auth-nav{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:.7rem .9rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow)}.auth-nav-actions{display:flex;gap:.65rem;flex-wrap:wrap;justify-content:flex-end}.auth-hero,.auth-card,.panel,.sidebar,.topbar,.setup-card,.metric-card,.coach-card,.phone-preview{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow-soft);transition:box-shadow var(--duration-base) var(--ease-smooth),border-color var(--duration-base) var(--ease-smooth),transform var(--duration-base) var(--ease-smooth)}.auth-hero,.auth-card,.phone-preview{border-radius:var(--radius)}.panel,.setup-card{border-radius:0}.metric-card{border-radius:var(--radius)}.auth-hero{padding:1.5rem;display:grid;align-content:end;gap:1rem;min-height:52vh;background:var(--panel);border-left:3px solid var(--vault)}.landing-hero{min-height:calc(100vh - 130px);align-content:center}.auth-hero h1{max-width:14ch;font-size:clamp(2.1rem,6vw,3.4rem);line-height:1.04;font-weight:600;margin-bottom:.75rem}.auth-hero p,.auth-card p,.topbar p,.muted-copy{color:var(--muted);line-height:1.6}.auth-card{padding:1.25rem;align-self:center;display:grid;gap:.9rem}.auth-card h2{font-size:1.5rem}.auth-choice-card{width:min(100%,860px);justify-self:center;align-self:start;margin-top:clamp(1rem,8vh,5rem);text-align:center}.auth-choice-grid{display:grid;grid-template-columns:1fr;gap:1rem}.auth-choice{min-height:240px;padding:1.25rem;display:grid;place-items:center;align-content:center;gap:.8rem;color:var(--text);text-align:center;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow-soft);transition:border-color var(--duration-base) var(--ease-smooth),box-shadow var(--duration-base) var(--ease-smooth),transform var(--duration-base) var(--ease-smooth)}.auth-choice:not(.disabled):hover{border-color:var(--vault);box-shadow:var(--shadow-card);transform:translateY(-2px)}.auth-choice.disabled{opacity:.78}.auth-choice small{max-width:26ch;color:var(--muted);line-height:1.5}.choice-icon{width:64px;height:64px;display:grid;place-items:center;border-radius:var(--radius-md);color:var(--vault-ink);background:var(--vault);font-family:var(--display);font-size:1.6rem;font-weight:700}.brand-mark{width:40px;height:40px;border-radius:var(--radius-md);display:grid;place-items:center;background:var(--vault);color:var(--vault-ink);font-family:var(--display);font-weight:700;letter-spacing:-.02em}.eyebrow{color:var(--muted);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.14em}.phone-preview{display:grid;gap:.9rem;padding:1rem;max-width:360px;background:var(--panel-soft);border:1px solid var(--line)}.phone-preview div{display:flex;justify-content:space-between;gap:1rem}.phone-preview span,.phone-preview p,.field span,.mini-stat span,.metric-card span,.score-pill span,.card-topline span,.safe-row span,.transaction-row span,.account-card span,.queue-card span,.coach-card span{color:var(--muted);font-size:var(--text-sm)}.field{display:grid;gap:.45rem}.field-hint{font-size:.75rem;line-height:1.35;color:var(--muted)}.field-error{font-size:.75rem;line-height:1.35;color:var(--danger, #e5484d)}.field input[aria-invalid=true]{border-color:var(--danger, #e5484d)}.button-row{display:flex;gap:.65rem;flex-wrap:wrap;margin-top:.2rem}.button-row.no-margin{margin:0}.home-recent-footer{justify-content:flex-end;margin-top:.5rem}.beta-note{display:grid;gap:.3rem;padding:.2rem 0 .2rem 1.1rem;border-left:3px solid var(--gold);background:transparent}.beta-note strong{color:var(--text)}.beta-note p{color:var(--muted);line-height:1.5;margin:0}.app-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr);gap:0;padding:0}.sidebar{border-radius:var(--radius);padding:.85rem;display:flex;flex-direction:column;gap:.85rem;align-self:start}.sidebar-top{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.sidebar-brand,.profile-card{display:flex;gap:.8rem;align-items:center}.sidebar-brand div:last-child,.profile-card div:last-child{display:grid;gap:.15rem}.sidebar-brand span,.profile-card span{color:var(--muted);font-size:var(--text-sm)}.side-nav{display:flex;flex-direction:column;gap:.5rem;min-height:0}.nav-group{display:grid;gap:.1rem}.nav-group-label{padding:.5rem .7rem .2rem;color:var(--muted);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:.08em;text-transform:uppercase}.nav-item{min-height:44px;display:flex;align-items:center;justify-content:flex-start;gap:.65rem;text-align:left;text-decoration:none;padding:.5rem .7rem;border-radius:var(--radius-md);background:transparent;color:var(--ink);border:1px solid transparent;box-shadow:none;font-weight:var(--weight-medium);font-size:var(--text-base);transition:background var(--duration-fast) var(--ease-smooth),color var(--duration-fast) var(--ease-smooth)}.nav-item:hover{background:var(--panel-soft);opacity:1}.nav-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-icon{flex:0 0 auto;color:var(--muted)}.nav-text{display:grid;gap:0;min-width:0}.nav-helper{color:var(--muted);font-size:var(--text-xs);font-weight:500}.nav-item.active{color:var(--vault);border-color:transparent;background:var(--vault-soft)}.nav-item.active .nav-icon{color:var(--vault)}.nav-item.active .nav-helper{color:var(--vault);opacity:.7}.sidebar-foot{margin-top:auto;display:grid;gap:.5rem;padding-top:.6rem;border-top:1px solid var(--line)}.account-row{display:flex;align-items:center;gap:.6rem;min-height:48px;padding:.45rem .55rem;text-align:left;text-decoration:none;color:var(--ink);background:transparent;border:1px solid transparent;border-radius:var(--radius-md);box-shadow:none;font-weight:var(--weight-medium);transition:background var(--duration-fast) var(--ease-smooth)}.account-row:hover{background:var(--panel-soft);opacity:1}.account-row.active{background:var(--vault-soft)}.account-meta{flex:1;min-width:0;display:grid;gap:.05rem}.account-meta strong{font-size:var(--text-sm);font-weight:var(--weight-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-meta span{color:var(--muted);font-size:var(--text-xs)}.account-row>svg{flex:0 0 auto;color:var(--muted)}.avatar-sm{width:32px;height:32px;flex:0 0 auto;border-radius:var(--radius-pill);display:grid;place-items:center;background:linear-gradient(135deg,var(--emerald),var(--vault));color:var(--vault-ink);font-weight:var(--weight-bold);font-size:var(--text-xs)}.coach-card{display:none;border-radius:var(--radius-xl);padding:1rem;gap:.35rem;background:linear-gradient(180deg,var(--vault-soft),transparent)}.coach-card strong{font-size:2rem}.coach-card p{color:var(--muted);line-height:1.5}.logout{width:100%}.main-shell{min-width:0;display:grid;align-content:start;gap:0}.main-content{min-width:0;display:grid;align-content:start;gap:1rem;padding:1rem 1.25rem}.topbar{position:sticky;top:0;z-index:5;border-radius:0;border-width:0 0 1px;background:var(--panel-glass);-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);padding:1rem 2rem;display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.topbar h1{font-size:clamp(1.45rem,3.2vw,2rem);line-height:1.05;margin-top:.25rem;font-weight:600}.score-pill{flex:0 0 auto;min-width:96px;border-radius:var(--radius-md);padding:.6rem .75rem;border:1px solid var(--line);background:var(--panel-soft);display:grid;gap:.1rem}.score-pill strong{font-size:1.35rem}.screen-grid,.status-stack{display:grid;gap:1rem;align-items:start}.home-grid,.two-col,.analytics-grid{grid-template-columns:1fr}.app-shell>*,.main-shell,.main-shell>*,.main-content>*,.screen-grid>*,.section-lede>*,.balance-card>*{min-width:0}.balance-card{padding:1.25rem 0 1.5rem;display:grid;gap:1rem;background:transparent;border:none;border-bottom:1px solid var(--line);box-shadow:none}.balance-card h2{position:relative;padding-bottom:.7rem}.balance-card h2:after{content:"";position:absolute;left:0;right:0;bottom:0;height:7px;background-image:repeating-linear-gradient(to right,var(--line) 0 1px,transparent 1px 13px);border-bottom:1px solid var(--ink);opacity:.55}.setup-card{padding:1rem;display:grid;gap:1rem;background:var(--panel);border-color:var(--line);border-left:3px solid var(--gold);border-radius:0 var(--radius) var(--radius) 0}.setup-card.ready{border-left-color:var(--vault)}.setup-card-head{display:flex;justify-content:space-between;gap:1rem;align-items:start}.setup-card-head h2{margin:.2rem 0 .45rem;font-size:1.15rem}.setup-card-head p{color:var(--muted);line-height:1.5}.setup-card-head>strong{flex:0 0 auto;min-width:68px;padding:.75rem .85rem;border:1px solid var(--border-strong);border-radius:var(--radius-lg);color:var(--emerald);background:var(--vault-soft);text-align:center}.setup-step-list{display:grid;gap:.6rem}.setup-step{min-height:auto;padding:.85rem;display:flex;align-items:flex-start;justify-content:flex-start;gap:.75rem;text-align:left;color:var(--text);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--panel-soft);box-shadow:none}.setup-step.done{border-color:var(--vault-line);background:var(--vault-soft)}.setup-step-marker{flex:0 0 auto;width:26px;height:26px;border-radius:var(--radius-pill);display:grid;place-items:center;border:1px solid var(--border);background:var(--panel);color:var(--muted);font-family:var(--mono);font-size:var(--text-xs);font-weight:var(--weight-bold)}.setup-step.done .setup-step-marker{border-color:var(--vault);background:var(--vault);color:var(--vault-ink)}.setup-step-body{min-width:0;display:grid;gap:.22rem}.setup-step-status{color:var(--amber);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase}.setup-step.done .setup-step-status{color:var(--emerald)}.setup-step small{color:var(--muted);line-height:1.4}.card-topline,.safe-row,.account-card,.transaction-row{display:flex;justify-content:space-between;gap:1rem;align-items:center}.card-topline strong{color:var(--vault)}.balance-card h2{font-size:clamp(1.7rem,5vw,2.3rem);line-height:1.05;font-weight:500}.safe-row{align-items:stretch;flex-wrap:wrap}.safe-row div{min-width:150px;flex:1;display:grid;gap:.3rem;padding:.85rem;border-radius:var(--radius-md);background:var(--panel-soft);border:1px solid var(--line)}.safe-row strong{font-size:1.25rem}.balance-actions{display:grid;grid-template-columns:1fr;gap:.65rem}.truth-tags{display:flex;gap:.5rem;flex-wrap:wrap}.truth-tags span{padding:.45rem .65rem;border:1px solid var(--vault-line);border-radius:var(--radius-pill);color:var(--muted);background:var(--panel-soft);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.panel{padding:1rem;display:grid;align-content:start;gap:1rem}.panel-head{display:grid;gap:.25rem}.panel h2{font-size:1.1rem}.metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.metric-card{min-height:128px;padding:1rem;display:grid;grid-template-columns:1fr auto;grid-template-areas:"label trend" "value value";align-content:space-between;gap:.4rem .6rem;box-shadow:none}.metric-card-label{grid-area:label;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.metric-card strong{grid-area:value;font-size:1.35rem}.metric-trend{grid-area:trend;justify-self:end;align-self:start;display:inline-flex;align-items:center;gap:.28rem;font-size:var(--text-xs);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;white-space:nowrap}.metric-trend svg{flex:0 0 auto}.metric-trend.good{color:var(--vault)}.metric-trend.bad{color:var(--clay)}.metric-trend.flat{color:var(--muted)}.metric-card.good{border-color:var(--vault-line);background:var(--vault-soft)}.metric-card.warning{border-color:var(--gold-line);background:var(--gold-soft)}.metric-card.danger{border-color:var(--clay-line);background:var(--clay-soft)}.section-lede{display:grid;gap:.75rem;padding-bottom:1.1rem;border-bottom:1px solid var(--line)}.section-lede h2{margin-top:.25rem;font-size:clamp(1.9rem,5.5vw,3.4rem);line-height:1;overflow-wrap:anywhere}.section-lede p{margin-top:.4rem;color:var(--muted);line-height:1.6;max-width:62ch}.section-lede>strong{font-size:clamp(1.5rem,4vw,2.1rem);color:var(--text)}.section-lede.compact{gap:.4rem;padding-bottom:0;border-bottom:none}.section-lede.compact h2{font-size:clamp(1.6rem,4.5vw,2.4rem)}.leak-hero-stats,.profile-hero-stats,.salary-preview,.analytics-stat-grid,.trend-grid{display:grid;grid-template-columns:1fr;gap:.75rem}.coach-readout{display:grid;gap:.75rem}.trend-card{min-height:128px;display:grid;align-content:space-between;gap:.6rem;padding:1rem;border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--panel-soft)}.trend-card span{color:var(--muted)}.trend-card strong{font-size:1.45rem}.trend-card p{color:var(--muted);line-height:1.45}.trend-card.good{border-color:var(--vault-line)}.trend-card.warning{border-color:var(--gold-line);background:var(--gold-soft)}.trend-card.danger{border-color:var(--clay-line);background:var(--clay-soft)}.insight-card{padding:.15rem 0 .15rem 1rem;display:grid;gap:.3rem;border-left:3px solid var(--border);background:transparent;box-shadow:none}.insight-card span{font-size:var(--text-sm);font-weight:var(--weight-bold);text-transform:uppercase;color:var(--muted)}.insight-card strong{font-size:1.2rem}.insight-card p,.empty-state p,.queue-card p{color:var(--muted);line-height:1.55}.coach-advice-card small{color:var(--muted);line-height:1.45}.coach-advice-card{grid-column:1 / -1}.coach-advice-card p{display:-webkit-box;-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.insight-card.good{border-left-color:var(--vault)}.insight-card.warning{border-left-color:var(--gold)}.insight-card.danger{border-left-color:var(--clay)}.transaction-list,.stack-list,.category-bars,.account-strip,.account-grid,.ledger-summary{display:grid;gap:.65rem}.transaction-row,.account-card,.queue-card,.budget-line-card,.empty-state{border:1px solid var(--border);background:var(--panel-soft);border-radius:var(--radius-xl);padding:.85rem}.mini-stat{display:grid;gap:.2rem}.account-strip{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.account-chip{min-height:112px;width:100%;border-radius:var(--radius-xl);padding:.95rem;display:grid;grid-template-columns:1fr auto;grid-template-areas:"provider provider" "amount   label";align-content:space-between;gap:.35rem;text-align:left;background:var(--panel-soft);color:var(--text);border:1px solid var(--border);box-shadow:none;transition:border-color var(--duration-base) var(--ease-smooth),box-shadow var(--duration-base) var(--ease-smooth),transform var(--duration-base) var(--ease-smooth)}.account-chip:hover{border-color:var(--vault-line);box-shadow:var(--shadow-card);transform:translateY(-2px)}.account-chip span,.account-chip small{color:var(--muted)}.account-chip span{grid-area:provider}.account-chip strong{grid-area:amount;align-self:end;font-size:1.25rem}.account-chip small{grid-area:label;justify-self:end;align-self:end;text-align:right}.section-brief,.import-command{display:grid;gap:.35rem;padding:.2rem 0 .2rem 1.1rem;border-left:3px solid var(--vault);background:transparent}.section-brief strong,.import-command strong{font-size:1.2rem}.section-brief p,.import-command p,.premium-account-card p{color:var(--muted);line-height:1.55}.section-brief-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem}.section-brief-row .section-brief{flex:1;min-width:0}.section-brief-row button{flex:0 0 auto}.account-grid{grid-template-columns:1fr;align-items:start}.premium-account-card{min-height:168px;display:grid;align-content:space-between;gap:1rem;padding:1rem;border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--panel-soft)}.premium-account-card strong{font-size:1.55rem}.account-edit-trigger{justify-self:start;color:var(--vault)}.account-card-top,.import-command{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.account-card-top span,.import-command>span{color:var(--muted);font-weight:var(--weight-semibold)}.account-mark{width:44px;height:44px;display:grid;place-items:center;border-radius:var(--radius-md);color:var(--vault-ink);font-weight:var(--weight-bold);background:linear-gradient(135deg,var(--emerald),var(--vault))}.review-hero{display:grid;gap:.5rem;padding:.2rem 0 .2rem 1.1rem;border-left:3px solid var(--gold);background:transparent}.review-hero strong{display:block;margin-top:.25rem;font-size:1.25rem}.review-hero p{margin-top:.35rem;color:var(--muted);line-height:1.5}.import-command>div{display:grid;gap:.3rem}.import-command>span{flex:0 0 auto;padding:.45rem .65rem;border-radius:var(--radius-pill);border:1px solid var(--vault-line);background:var(--vault-soft)}.ledger-summary{grid-template-columns:1fr;padding-bottom:1rem;margin-bottom:.25rem;border-bottom:1px solid var(--line)}.transaction-row{display:grid;grid-template-columns:minmax(0,1fr);align-items:start}.transaction-row div:first-child,.account-card div{display:grid;gap:.2rem}.transaction-description{color:var(--muted);line-height:1.35;margin:0;overflow-wrap:anywhere}.ledger-table{display:grid;gap:0}.ledger-table-head{display:none}.ledger-table-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"payee amount menu" "meta  amount menu";align-items:center;column-gap:.75rem;row-gap:.2rem;padding:.8rem 0;border-bottom:1px solid var(--line-soft);transition:background var(--duration-fast) var(--ease-smooth)}.ledger-table-row:last-child{border-bottom:none}.ledger-table-row:hover{background:var(--panel-soft)}.ledger-table-payee{grid-area:payee;display:grid;gap:.15rem;min-width:0}.ledger-table-payee strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ledger-table-desc{color:var(--muted);font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ledger-table-meta{grid-area:meta;color:var(--muted);font-size:var(--text-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ledger-table-row .amount{grid-area:amount;white-space:nowrap}.ledger-table-menu-cell{grid-area:menu;display:contents}@media(min-width:760px){.ledger-table-head,.ledger-table-row{grid-template-columns:minmax(0,1.3fr) minmax(0,.9fr) auto auto;grid-template-areas:"payee meta amount menu"}.ledger-table-head{display:grid;column-gap:.75rem;padding:0 0 .6rem;border-bottom:1px solid var(--line)}.ledger-table-head span{color:var(--muted);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.06em}.ledger-table-meta{font-size:var(--text-sm)}}.row-menu{position:relative;grid-area:menu;justify-self:end}.row-menu-trigger{color:var(--muted)}.row-menu-list{position:absolute;top:calc(100% + .3rem);right:0;z-index:30;display:grid;min-width:140px;padding:.35rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--panel-strong);box-shadow:var(--shadow-raised)}.row-menu-list button{justify-content:flex-start;min-height:36px;padding:.45rem .6rem;border:0;border-radius:var(--radius-sm);background:transparent;box-shadow:none;color:var(--text);font-weight:var(--weight-medium)}.row-menu-list button:hover{background:var(--panel-soft);opacity:1;transform:none}.row-menu-list button.danger{color:var(--clay)}.ledger-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.5rem;padding-top:.85rem;border-top:1px solid var(--line)}.ledger-pagination span{color:var(--muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.ledger-pagination-actions{display:flex;gap:.5rem}.amount.credit{color:var(--emerald)}.amount.debit{color:var(--red)}.row-actions{display:flex;gap:.5rem;flex-wrap:wrap}.mini-button{min-height:44px;padding:.5rem .75rem;font-size:var(--text-sm)}.mini-stat{display:grid;gap:.25rem}.section-lede.compact>strong{align-self:end;color:var(--amber)}.plan-stat-grid{display:grid;grid-template-columns:1fr;gap:.75rem}.progress-track{height:11px;overflow:hidden;border-radius:var(--radius-pill);background:var(--panel-soft);border:1px solid var(--line)}.progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--emerald),var(--vault))}.budget-line-card{display:grid;gap:.75rem}.budget-line-card.paid{border-color:var(--vault-line);background:var(--vault-soft)}.budget-line-card.partial{border-color:var(--gold-line);background:var(--gold-soft)}.budget-line-card.open{border-color:var(--clay-line)}.budget-line-top,.budget-line-money{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.budget-line-top div{display:grid;gap:.2rem}.budget-line-top span,.budget-line-money span,.budget-line-card p{color:var(--muted)}.budget-line-top small{flex:0 0 auto;padding:.35rem .55rem;border-radius:var(--radius-pill);color:var(--vault-ink);background:var(--emerald);font-weight:var(--weight-bold)}.budget-line-card.partial .budget-line-top small{background:var(--amber)}.budget-line-pay{display:flex;align-items:flex-end;gap:.6rem}.budget-line-pay .field{flex:1}.budget-line-pay button{flex:0 0 auto;white-space:nowrap}.leak-legend-note{margin-top:.2rem}.payees-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}.payee-list{display:grid;gap:.75rem;align-content:start}.payee-list-head{display:flex;flex-direction:column;gap:.15rem}.payee-list-head strong{font-size:1.05rem}.payee-list-head span{color:var(--muted);font-size:var(--text-sm)}.payee-row{display:grid;gap:.3rem}.payee-row-top{display:flex;justify-content:space-between;gap:.75rem;align-items:baseline}.payee-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.payee-amount{flex:0 0 auto;white-space:nowrap}.payee-amount.out{color:var(--red)}.payee-amount.in{color:var(--emerald)}.payee-row .bar-track span.in{background:var(--emerald)}.payee-row .bar-track span.out{background:var(--red)}.payee-meta{color:var(--muted);font-size:var(--text-sm)}.budget-line-card.open .budget-line-top small{color:var(--clay);background:var(--clay-soft);border:1px solid var(--clay-line)}.budget-line-card p{line-height:1.55}.toolbar{display:grid;gap:.65rem}.toolbar.date-filter{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.toolbar.date-filter select,.toolbar.date-filter input[type=date]{width:auto;flex:1 1 150px;min-width:130px;max-width:200px}.toolbar.ledger-toolbar-compact{display:flex;align-items:center;gap:.5rem}.toolbar.ledger-toolbar-compact input{width:auto;flex:1 1 auto}.toolbar.ledger-toolbar-compact .chip{flex:0 0 auto}.period-filter{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.2rem}.chip{min-height:44px;display:inline-flex;align-items:center;padding:.35rem .8rem;border-radius:var(--radius-pill);border:1px solid var(--line);background:transparent;color:var(--muted);font-weight:var(--weight-semibold);font-size:var(--text-sm);transition:background var(--duration-fast) var(--ease-smooth),border-color var(--duration-fast) var(--ease-smooth),color var(--duration-fast) var(--ease-smooth)}.chip:hover{opacity:1;border-color:var(--border-strong);color:var(--text)}.chip.active{background:var(--vault-soft);border-color:var(--vault);color:var(--vault)}.period-spent{margin-left:auto;color:var(--muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.category-total{margin-left:0;margin-top:.4rem;color:var(--text);font-weight:600}.manual-add-form .mini-button{justify-self:start}.file-drop{display:grid;gap:.25rem;justify-items:center;text-align:center;padding:1.25rem 1rem;border:1px dashed var(--vault-line);border-radius:var(--radius-xl);background:var(--vault-soft);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-smooth),background var(--duration-fast) var(--ease-smooth)}.file-drop:hover{border-color:var(--vault)}.file-drop>svg{color:var(--vault);margin-bottom:.15rem}.manual-add{border-top:1px solid var(--line);padding-top:.6rem}.manual-add>summary{cursor:pointer;list-style:none;display:inline-flex;align-items:center;gap:.45rem;color:var(--vault);font-weight:var(--weight-semibold);font-size:var(--text-sm)}.manual-add>summary::-webkit-details-marker{display:none}.manual-add-chevron{transition:transform var(--duration-fast) var(--ease-smooth)}.manual-add[open] .manual-add-chevron{transform:rotate(180deg)}.manual-add-form{display:grid;gap:.6rem;margin-top:.75rem}.file-drop input{display:none}.file-drop span,.statement-preview p{color:var(--muted)}.statement-preview{display:grid;gap:.8rem}.projection-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.projection-callout{padding:.2rem 0 .2rem 1.1rem;border-left:3px solid var(--gold);background:transparent}.account-suggestion{border-left-color:var(--vault)}.account-suggestion span{color:var(--muted);font-size:var(--text-sm)}.statement-rows{display:grid;gap:.65rem}.category-bars{gap:0}.bar-row{display:grid;gap:.5rem}.analytics-bar-row{padding:.75rem 0;border-bottom:1px solid var(--line-soft)}.analytics-bar-row:last-child{border-bottom:none;padding-bottom:0}.bar-row div:first-child{display:flex;justify-content:space-between;gap:1rem}.bar-row span{color:var(--muted)}.bar-track{height:12px;overflow:hidden;border-radius:var(--radius-pill);background:var(--panel-soft)}.bar-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--emerald),var(--vault))}.donut-wrap{display:grid;place-items:center;min-height:230px}.donut-legend-row{display:flex;align-items:center;gap:2rem;flex-wrap:wrap}.donut-legend-row .donut-wrap{min-height:auto;flex:0 0 auto}.chart-legend{list-style:none;margin:0;padding:0;display:grid;gap:.85rem;flex:1 1 200px}.chart-legend li{display:flex;align-items:baseline;gap:.5rem;color:var(--muted);font-size:var(--text-sm)}.chart-legend li strong{margin-left:auto;color:var(--text);font-size:var(--text-md);font-variant-numeric:tabular-nums}.legend-dot{width:8px;height:8px;border-radius:50%;flex:0 0 auto}.legend-dot.expense{background:var(--clay)}.legend-dot.income{background:var(--vault)}.donut{width:210px;aspect-ratio:1;border-radius:var(--radius-pill);display:grid;place-items:center;box-shadow:inset 0 0 0 1px var(--border)}.donut>div{width:136px;aspect-ratio:1;border-radius:inherit;background:var(--panel-strong);display:grid;place-items:center;align-content:center;gap:.25rem;text-align:center}.donut strong{font-size:1.45rem}.donut span{color:var(--muted);font-size:var(--text-sm)}.segmented{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem;padding:.35rem;border-radius:var(--radius-pill);background:var(--panel-soft);border:1px solid var(--border)}.segmented button{box-shadow:none;min-height:44px;padding:.5rem .6rem;background:transparent;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tabs{display:grid;grid-template-columns:repeat(2,1fr);border-bottom:1px solid var(--line);margin-bottom:1.25rem}.tabs button{padding:.65rem .5rem;min-height:auto;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;box-shadow:none;color:var(--muted);font-weight:var(--weight-semibold);text-align:center;justify-content:center;transition:color var(--duration-fast) var(--ease-smooth),border-color var(--duration-fast) var(--ease-smooth)}.tabs button:hover{color:var(--text);opacity:1;transform:none}.tabs button.active{color:var(--vault);border-bottom-color:var(--vault)}.segmented button.active{background:var(--emerald);color:var(--vault-ink)}.avatar{width:58px;height:58px;border-radius:var(--radius-xl);display:grid;place-items:center;background:linear-gradient(135deg,var(--emerald),var(--vault));color:var(--vault-ink);font-weight:var(--weight-bold);font-size:1.3rem}.review-group{display:grid;gap:.6rem;padding:.85rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--panel-soft)}.review-group-head{display:flex;justify-content:space-between;gap:1rem;align-items:baseline;flex-wrap:wrap}.review-group-head span{color:var(--muted);font-size:var(--text-sm)}.review-group-controls{display:grid;grid-template-columns:1fr auto auto;gap:.6rem;align-items:center}.ledger-groups{display:grid;gap:.6rem}.category-input{min-width:0}.remember-toggle{display:flex;align-items:center;gap:.4rem;color:var(--muted);font-size:var(--text-sm)}.review-group-controls .remember-toggle{white-space:nowrap}.edit-modal-form .remember-toggle{align-items:flex-start}.remember-toggle input{width:auto;min-height:auto}.link-button{background:none;border:0;box-shadow:none;min-height:auto;padding:.2rem 0;color:var(--emerald);font-weight:600;cursor:pointer;width:auto;justify-self:start}.link-button:hover{text-decoration:underline;transform:none}.review-group-toggle{font-size:var(--text-sm)}.review-group-preview{list-style:none;margin:0;padding:.4rem .6rem;display:grid;gap:.35rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:#0000002e;max-height:240px;overflow-y:auto}.review-group-preview li{display:grid;grid-template-columns:auto 1fr auto;gap:.6rem;align-items:baseline;font-size:var(--text-sm)}.review-preview-date{color:var(--muted);white-space:nowrap}.review-preview-desc{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-preview-amount{font-variant-numeric:tabular-nums;font-weight:600}.review-preview-amount.credit{color:var(--emerald)}.review-preview-more{color:var(--muted);font-style:italic}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:1.25rem;background:#02050aa8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-card{width:100%;max-width:460px;max-height:90vh;overflow-y:auto;padding:1.4rem;border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--panel-strong);box-shadow:var(--shadow-modal)}.modal-card.lg{max-width:640px}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.modal-close{color:var(--muted)}.modal-close:hover{background:var(--panel-soft);color:var(--text);opacity:1}.confirm-body{display:grid;gap:1.1rem}.confirm-body p{color:var(--muted);line-height:1.55}.confirm-actions{display:flex;justify-content:flex-end;gap:.6rem}@keyframes mm-loader-spin{to{transform:rotate(360deg)}}.page-loader{min-height:100vh;display:grid;align-content:center;justify-items:center;gap:1rem;background:var(--paper);color:var(--muted)}.page-loader-mark{position:relative;width:64px;height:64px;display:grid;place-items:center}.page-loader-mark .brand-mark{width:40px;height:40px}.page-loader-ring{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:2px solid var(--line);border-top-color:var(--vault);animation:mm-loader-spin .8s linear infinite}.page-loader p{font-size:var(--text-sm);font-weight:var(--weight-medium)}.not-found-screen{min-height:50vh;display:grid;align-content:center;justify-items:center;gap:var(--space-3);text-align:center;padding:var(--space-6) var(--space-4)}.not-found-code{font-size:var(--text-2xl);font-weight:var(--weight-bold);color:var(--vault)}.not-found-screen h2{font-size:var(--text-xl);font-weight:var(--weight-semibold)}.not-found-screen p{max-width:32ch;color:var(--muted);font-size:var(--text-base);line-height:1.55}@keyframes mm-skeleton-pulse{0%,to{opacity:1}50%{opacity:.5}}.skeleton{display:block;background:var(--skeleton);border-radius:var(--radius-sm);animation:mm-skeleton-pulse 1.4s var(--ease-smooth) infinite}.skeleton-line{height:.72rem}.skeleton-list{display:grid;gap:.65rem}.skeleton-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem;border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--panel-soft)}.skeleton-row-main{flex:1;min-width:0;display:grid;gap:.5rem}.skeleton-row-main .skeleton-line:first-child{width:42%}.skeleton-row-main .skeleton-line:last-child{width:68%;height:.62rem}.skeleton-amount{flex:0 0 auto;width:72px;height:.9rem}.modal-head h2{margin:0;font-size:1.15rem}.edit-modal-form{display:grid;gap:.85rem}.edit-modal-form>.chip{justify-self:start}.edit-modal-form.fields-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem 1rem}.edit-modal-form.fields-grid .field-full,.edit-modal-form.fields-grid>.edit-modal-actions{grid-column:span 2}@media(max-width:520px){.edit-modal-form.fields-grid{grid-template-columns:1fr}}.edit-modal-actions{display:flex;justify-content:flex-end;gap:.7rem;margin-top:.4rem}.chat-log{display:grid;gap:.6rem;max-height:56vh;overflow-y:auto;padding:.25rem}.chat-bubble{max-width:86%;padding:.7rem .9rem;border-radius:var(--radius-lg);line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid var(--border)}.chat-bubble.user{justify-self:end;color:var(--vault-ink);border-color:transparent;background:linear-gradient(135deg,var(--emerald),var(--emerald-2))}.chat-bubble.assistant{justify-self:start;color:var(--text);background:var(--panel-soft)}.status-banner{border-radius:var(--radius-lg);padding:.85rem 1rem;color:var(--text);border:1px solid var(--border);background:var(--panel-soft);line-height:1.5}.status-banner.warning{border-color:var(--gold-line);background:var(--gold-soft)}.inline-spinner{display:flex;align-items:center;gap:.6rem;color:var(--muted);font-size:var(--text-sm);font-weight:var(--weight-medium)}.inline-spinner-ring{width:14px;height:14px;flex-shrink:0;border-radius:50%;border:2px solid var(--line);border-top-color:var(--vault);animation:mm-loader-spin .8s linear infinite}@media(min-width:760px){.auth-screen{grid-template-columns:1.12fr .88fr;padding:1.4rem}.auth-nav,.landing-hero,.auth-choice-card{grid-column:span 2}.landing-hero{grid-template-columns:minmax(0,1fr) 360px;align-items:center}.auth-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell{grid-template-columns:280px minmax(0,1fr);padding:0}.main-content{padding:1.5rem 2rem}.sidebar{position:sticky;top:0;height:100vh;max-height:100vh;border-radius:0;border:none;border-right:1px solid var(--line);overflow:hidden;overscroll-behavior:contain}.side-nav{flex:1 1 auto;min-height:0;overflow-y:auto;scrollbar-width:thin}.nav-item-profile{display:none}.side-nav{grid-template-columns:1fr}.coach-card{display:grid}.home-grid{grid-template-columns:1.2fr .8fr}.balance-card,.setup-card{grid-column:span 2}.metric-grid{grid-column:span 2;grid-template-columns:repeat(3,minmax(0,1fr))}.home-accounts,.home-income,.home-recent{grid-column:span 2}.two-col,.analytics-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.accounts-overview{grid-column:span 2}.two-col>.ledger-panel,.two-col>.import-panel{grid-column:span 2}.two-col>.plan-panel,.two-col>.salary-panel{grid-column:span 2}.section-lede:not(.compact),.analytics-stat-grid,.analytics-forecast,.analytics-payees,.leak-legend-note{grid-column:span 2}.analytics-payees .payees-grid{grid-template-columns:1fr 1fr}.section-lede:not(.compact){grid-template-columns:minmax(0,1fr) 280px;align-items:center}.section-lede.compact{grid-template-columns:minmax(0,1fr) auto;align-items:end}.leak-hero-stats,.profile-hero-stats{grid-template-columns:1fr}.analytics-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.analytics-grid>.period-filter,.analytics-grid>.toolbar.date-filter{grid-column:span 2}.trend-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.toolbar{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:end}.balance-actions,.plan-stat-grid,.ledger-summary,.salary-preview{grid-template-columns:repeat(3,minmax(0,1fr))}.account-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.transaction-row{grid-template-columns:minmax(0,1fr) auto auto;align-items:center}}@media(min-width:1180px){.home-grid{grid-template-columns:1.15fr .85fr .8fr}.balance-card{grid-column:span 3}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-column:span 3}.setup-card,.home-accounts,.home-income,.home-recent{grid-column:span 3}}@media(max-width:520px){.auth-nav{align-items:flex-start}.auth-nav,.auth-nav-actions{display:grid}.auth-nav-actions{grid-template-columns:1fr 1fr;width:100%}.landing-hero{min-height:auto}.auth-choice{min-height:200px}.topbar{flex-direction:column}.score-pill{width:100%}.metric-grid{grid-template-columns:1fr}.side-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.button-row button{width:100%}.balance-actions button,.budget-line-card>button{width:100%}.budget-line-pay{flex-direction:column;align-items:stretch}.budget-line-pay button{width:100%}.review-group-controls{grid-template-columns:1fr}.budget-line-top,.budget-line-money,.import-command{display:grid}}.infotip{position:relative;display:inline-flex;vertical-align:middle;margin-left:.3rem}.infotip-trigger{min-height:auto;width:auto;padding:.1rem;border:0;background:transparent;box-shadow:none;color:var(--faint);line-height:0}.infotip-trigger:hover{background:transparent;color:var(--text);opacity:1}.infotip-bubble{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);z-index:60;width:max-content;max-width:220px;padding:.5rem .65rem;border-radius:var(--radius-md);background:var(--ink);color:var(--paper);font-family:var(--display);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:1.45;letter-spacing:0;text-transform:none;box-shadow:var(--shadow-raised);pointer-events:none;white-space:normal}.tab-bar{display:none}.tab-bar-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:.15rem;min-height:48px;padding:.3rem .2rem;border:0;text-decoration:none;background:transparent;box-shadow:none;color:var(--muted);font-size:.62rem;font-weight:var(--weight-medium)}.tab-bar-item.active{color:var(--vault)}.tab-bar-item svg{flex:0 0 auto}.more-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.more-item{display:grid;gap:.1rem;justify-items:start;padding:.85rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--panel-soft);color:var(--ink);box-shadow:none;text-align:left}.more-item svg{color:var(--muted);margin-bottom:.2rem}.more-item span{font-weight:var(--weight-semibold)}.more-item small{color:var(--muted);font-size:var(--text-xs)}.more-item.active{border-color:var(--vault-line);background:var(--vault-soft);color:var(--vault)}.more-item.active svg{color:var(--vault)}@media(max-width:759px){.app-shell{padding:0;gap:0}.main-content{padding:1rem 1rem calc(4.75rem + env(safe-area-inset-bottom,0px))}.side-nav{display:none}.tab-bar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:40;justify-content:space-around;gap:.2rem;padding:.35rem .4rem calc(.35rem + env(safe-area-inset-bottom,0px));background:var(--panel);border-top:1px solid var(--line)}.sidebar{flex-direction:row;align-items:center;gap:.5rem;padding:.55rem .75rem;border-radius:0;border:none;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;background:var(--panel);overflow:visible}.sidebar-top,.nav-group,.sidebar-foot{display:contents}.sidebar-brand{flex:0 0 auto;order:0}.sidebar-brand strong,.sidebar-brand span,.nav-group-label,.account-row,.coach-card{display:none}.sidebar .theme-toggle{order:5;flex:0 0 auto}.nav-item{flex:0 0 auto;white-space:nowrap;min-height:44px;padding:.4rem .75rem}.sidebar-foot .logout{order:6;width:auto;flex:0 0 auto;min-height:44px;padding:.4rem .7rem}.topbar h1{font-size:clamp(1.3rem,6vw,1.7rem)}}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1fr}.auth-brand{display:none}.auth-panel{min-height:100vh;display:flex;flex-direction:column;padding:clamp(1.1rem,4vw,2.25rem)}.auth-panel-top{display:flex;align-items:center;justify-content:space-between;gap:1rem}.auth-panel-brand{display:flex;align-items:center;gap:.55rem}.auth-panel-brand strong{font-family:var(--display);font-size:1rem}.auth-panel-body{flex:1;width:100%;max-width:380px;margin:0 auto;display:grid;align-content:center;justify-items:stretch;gap:.8rem;padding:2rem 0}.auth-panel-body h2{font-size:clamp(1.55rem,2.5vw,2rem);letter-spacing:-.015em;line-height:1.1}.auth-panel-body>p{color:var(--muted);line-height:1.6;margin-top:-.2rem}.auth-form{display:grid;gap:.85rem;width:100%}.auth-actions{display:grid;gap:.6rem;margin-top:.35rem}.auth-actions button{width:100%}.auth-alt{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 1rem;margin-top:.1rem}.auth-field-control{position:relative;display:flex;align-items:center}.auth-field-icon{position:absolute;left:.75rem;color:var(--muted);pointer-events:none}.auth-field-control input{padding-left:2.25rem}.auth-field-control input[type=password],.auth-field-control input[type=text]{padding-right:2.6rem}.auth-field-reveal{position:absolute;right:.35rem;min-height:auto;height:32px;width:32px;min-width:32px;border:0;background:transparent;color:var(--muted)}.auth-field-reveal:hover{background:var(--panel-soft);color:var(--text);opacity:1}.auth-brand-head{display:flex;align-items:center;gap:.7rem}.auth-brand-head strong{display:block;font-family:var(--display);font-size:1.05rem}.auth-brand-head span{color:var(--muted);font-size:.8rem}.auth-brand-body{display:grid;align-content:center;gap:1rem}.auth-brand-body h1{font-size:clamp(2rem,3.4vw,3rem);line-height:1.04;letter-spacing:-.02em;max-width:15ch}.auth-brand-body>p{color:var(--muted);line-height:1.6;max-width:42ch}.auth-points{list-style:none;margin:.4rem 0 0;padding:0;display:grid;gap:.75rem}.auth-points li{display:flex;gap:.65rem;align-items:flex-start;color:var(--muted);line-height:1.45}.auth-points svg{flex:0 0 auto;margin-top:.15rem;color:var(--vault)}.auth-proof{display:grid;gap:.5rem;padding:1rem 1.15rem;border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--panel-soft);box-shadow:var(--shadow-soft)}.auth-proof-head{display:flex;align-items:center;gap:.5rem}.auth-proof-head svg{flex:0 0 auto;color:var(--vault)}.auth-proof-head strong{font-size:.98rem}.auth-proof>p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.5}.choice-icon svg{color:var(--vault-ink)}@media(min-width:860px){.auth-shell{grid-template-columns:1.05fr 1fr}.auth-brand{display:flex;flex-direction:column;justify-content:space-between;gap:2rem;padding:clamp(2rem,4vw,3.5rem);border-right:1px solid var(--line);background:radial-gradient(130% 120% at 0% 0%,var(--vault-soft),transparent 55%),var(--panel)}.auth-panel-brand{display:none}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
