:root{--color-text:#172b32;--color-background:#f5f7f6;--color-primary:#176658;--color-border:#dce6e0;--radius-control:9px;--radius-panel:16px;color:var(--color-text);background:var(--color-background);font-synthesis:none;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select{font:inherit}button{border:1px solid var(--color-primary);background:var(--color-primary);color:#fff;cursor:pointer;border-radius:9px;padding:11px 19px;font-weight:650}button:hover:not(:disabled){background:#104e43}button:disabled{opacity:.6;cursor:wait}button.secondary{color:#24554c;background:#fff;border-color:#bacdc7}button.secondary:hover:not(:disabled){background:#edf4f1}input,select{width:100%;color:var(--color-text);background:#fff;border:1px solid #b8c7c1;border-radius:8px;min-height:46px;padding:11px 12px}input[aria-invalid=true]{border-color:#a22c2c}:focus-visible{outline-offset:3px;outline:3px solid #277cce}label{margin:0 0 7px;font-size:.9rem;font-weight:650;display:block}fieldset{border:0;min-width:0;margin:0;padding:0}h1,h2,p{overflow-wrap:anywhere}h1{letter-spacing:-.045em;margin:12px 0 20px;font-size:clamp(2.4rem,5vw,4.4rem);line-height:1.08}h2{letter-spacing:-.025em;margin:0 0 12px;font-size:1.45rem;line-height:1.3}p{margin:0 0 16px}.app-shell{max-width:1180px;margin:auto;padding:28px 32px 64px}.brand{align-items:center;gap:10px;font-weight:750;display:flex}.brand-mark{background:var(--color-primary);color:#fff;border-radius:10px;place-items:center;width:36px;height:36px;display:grid}.login-layout{grid-template-columns:1.2fr 1fr;align-items:center;gap:64px;min-height:75vh;display:grid}.login-intro>p:last-child{color:#52655d;max-width:390px;font-size:1.1rem}.eyebrow{color:var(--color-primary);letter-spacing:.1em;text-transform:uppercase;font-size:.74rem;font-weight:750}.panel{border:1px solid var(--color-border);background:#fff;border-radius:16px;padding:28px;box-shadow:0 8px 30px #172b3205}.login-panel{width:100%;max-width:430px}.login-panel input{margin-bottom:22px}.muted,.help{color:#596d64}.full-width{width:100%}.center-card{max-width:500px;margin:100px auto}.center-card h1{font-size:2.2rem}.workspace{padding-top:12px}.workspace h1{margin:0;font-size:1.75rem;line-height:1.2}.workspace-heading,.section-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.section-heading{margin:10px 0 12px}.section-heading p{margin:0}.account-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.account-card .balance{margin:24px 0 8px;font-size:1.7rem;font-weight:700}.account-card>p:last-child{margin-bottom:0;font-size:.86rem}.empty-state{text-align:center;padding:52px 24px}.empty-state p{color:#596d64}.create-panel{margin-bottom:26px}.create-panel h2{margin-bottom:24px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.form-wide{grid-column:1/-1}.form-actions{gap:12px;display:flex}.help,.field-error{margin-top:7px;font-size:.8rem;display:block}.error{color:#922b2b;background:#fff1f0;border-radius:8px;padding:12px 15px}.field-error{color:#922b2b}.notice{color:#24554c;background:#e8f3ed;border-radius:8px;padding:12px 15px}@media (width<=720px){.app-shell{padding:22px 20px 40px}.login-layout{grid-template-columns:1fr;gap:28px;padding-top:36px}.login-panel{max-width:none}.login-intro h1{font-size:2.7rem}.panel{padding:22px}.account-grid,.form-grid{grid-template-columns:1fr}.workspace-heading{align-items:flex-start}.section-heading{flex-wrap:wrap}}.workspace-nav{border-bottom:1px solid var(--color-border);gap:8px 16px;margin-top:12px;padding-bottom:6px;display:flex}.workspace-nav a{color:#24554c;padding:6px 0;text-decoration:none}.workspace-nav a[aria-current=page]{border-bottom:2px solid var(--color-primary);font-weight:750}.security-panel{max-width:850px}.security-panel .section-heading{margin-top:0}.security-panel input:not([type=checkbox]),.security-panel select{max-width:440px;margin-bottom:18px;display:block}.security-panel fieldset button{margin-bottom:18px}.security-badge{color:#24554c;white-space:nowrap;background:#e8f3ed;border-radius:99px;padding:6px 12px}.mfa-wizard{border-top:1px solid var(--color-border);margin-top:26px;padding-top:18px}.mfa-wizard>.secondary{margin-top:16px}.mfa-qr{width:240px;max-width:100%;height:auto;margin-bottom:16px;display:block}.setup-key{overflow-wrap:anywhere;background:#f3f6f4;border-radius:8px;margin-bottom:12px;padding:12px;display:block}.recovery-codes{background:#f3f6f4;border-radius:8px;padding:14px;list-style:none}.recovery-codes li{overflow-wrap:anywhere;margin-bottom:6px}.checkbox-label{align-items:center;gap:12px;margin:22px 0;display:flex}.checkbox-label input{width:20px;height:20px;min-height:20px}.security-panel .form-actions{flex-wrap:wrap}.account-filter{flex-wrap:wrap;gap:8px;margin:8px 0 12px;display:flex}.account-filter button.secondary[aria-pressed=true]{background:var(--color-primary);color:#fff}.account-card .form-actions,.workspace>.panel .form-actions{flex-wrap:wrap}.workspace textarea{width:100%;min-height:100px;font:inherit;border:1px solid #aabdb5;border-radius:8px;padding:10px}.workspace article{overflow-wrap:anywhere;margin-bottom:12px}.workspace>.form-actions{flex-wrap:wrap;margin:16px 0}.net-worth-total{overflow-wrap:anywhere;margin:18px 0;font-size:clamp(1.6rem,4vw,2.2rem);font-weight:750}.net-worth-totals{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.net-worth-totals dd{overflow-wrap:anywhere;margin:6px 0 0;font-weight:650}.net-worth-card summary{cursor:pointer;color:#24554c;padding:12px 0}.net-worth-types,.future-accounts{padding-left:20px}.net-worth-types li,.future-accounts li{overflow-wrap:anywhere;margin:12px 0}.net-worth-types span{margin-top:4px;display:block}.net-worth-accounts{margin-top:32px}.net-worth-accounts h3{overflow-wrap:anywhere}.net-worth-accounts a,.empty-state a{color:var(--color-primary)}.workspace-nav,.category-card .form-actions{flex-wrap:wrap}.category-child{margin-left:24px}.category-branch{margin-bottom:24px}.category-card h3{overflow-wrap:anywhere}.spending .form-actions{flex-wrap:wrap}.spending input[type=checkbox]{vertical-align:middle;width:20px;height:20px;min-height:20px;margin-right:8px}.spending .form-actions label{max-width:100%}.spending-table{max-width:100%;margin-block:1rem;overflow-x:auto}.spending-table table{border-collapse:collapse;width:100%}.spending-table th,.spending-table td{text-align:left;border-bottom:1px solid #cbd5e1;padding:.6rem}.spending-table td a{display:block}.spending-table tr:focus,.category-card[data-selected=true]{outline:2px solid #2563eb}.spending .form-actions form{max-width:100%}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.compact-category{padding:12px 16px;position:relative}.compact-category h3{margin:0 0 8px;padding-right:140px;font-size:1.05rem}.category-actions{font-size:.85rem;position:absolute;top:12px;right:16px}.category-actions[open]{margin-bottom:12px;position:relative;top:auto;right:auto}.category-actions summary{cursor:pointer;color:#24554c}@media (width<=600px){.compact-category h3{padding-right:0}.category-actions{margin-bottom:8px;position:static}}.field-label{margin:0 0 7px;font-size:.9rem;font-weight:650;display:block}.category-list{border:1px solid var(--color-border);background:#fff;border-radius:8px;overflow:hidden}.category-list-heading,.category-row{grid-template-columns:minmax(0,1fr) 112px;align-items:center;gap:12px;padding:10px 14px;display:grid}.category-list-heading{background:var(--color-background);color:#596d64;font-size:.78rem;font-weight:650}.category-list-heading>:last-child{text-align:right}.category-row{border-top:1px solid var(--color-border)}.category-row-name{min-width:0}.category-row-name h3{overflow-wrap:anywhere;margin:0;font-size:.95rem}.category-row-name>span{margin-top:3px;font-size:.78rem;display:block}.category-row-child .category-row-name{padding-left:16px}.category-row-actions{justify-content:flex-end;gap:4px;display:flex}.category-row-editor{grid-column:1/-1;padding:12px 0}.category-row[data-selected=true]{box-shadow:inset 3px 0 #2563eb}@media (width<=600px){.category-list-heading{display:none}.category-row{grid-template-columns:minmax(0,1fr) 128px;gap:4px 8px;padding:10px}.category-row:first-of-type{border-top:0}.category-row-name{grid-area:1/1}.category-row-actions{grid-area:1/2/span 2}.category-row-child .category-row-name{padding-left:8px}}.spending-summary{border:1px solid var(--color-border);background:#fff;border-radius:8px;padding:10px 14px;font-size:.85rem}.spending-summary p{margin:4px 0}.spending-table{border:1px solid var(--color-border);background:#fff;border-radius:8px}.spending-table caption{text-align:left;color:#596d64;padding:10px 14px;font-size:.8rem}.spending-table thead{background:var(--color-background)}.spending-table th,.spending-table td{border-color:var(--color-border);vertical-align:middle;padding:10px 12px;font-size:.85rem}.spending-table thead th{font-size:.78rem;font-weight:650}.spending-table tbody tr:last-child>*{border-bottom:0}.spending-row-name{align-items:center;gap:6px;min-width:0;display:flex}.spending-child-row .spending-row-name{padding-left:30px;font-weight:400}.spending-row-actions{justify-content:flex-end;align-items:center;gap:4px;display:flex}.spending-row-name .spending-expand{border:1px solid var(--color-border);width:32px;min-width:32px;min-height:32px;color:var(--color-primary);background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;width:24px;min-width:24px;min-height:24px;padding:0;display:inline-flex}.spending-action:hover{background:var(--color-background)}@media (width<=600px){.spending-row-name .spending-expand{width:32px;min-width:32px;min-height:32px}}.spending-table td[data-label]{text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.spending-row-name span{overflow-wrap:anywhere}@media (width<=600px){.spending-table table,.spending-table tbody{display:block}.spending-table thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.spending-table tbody tr{border-bottom:1px solid var(--color-border);grid-template-columns:repeat(3,minmax(0,1fr));padding:8px;display:grid;position:relative}.spending-table tbody tr:last-child{border-bottom:0}.spending-table tbody th{grid-column:1/-1;padding-right:48px}.spending-table tbody th,.spending-table tbody td{border:0;min-width:0;padding:6px}.spending-table td[data-label]:before{content:attr(data-label);color:#596d64;margin-bottom:4px;font-size:.7rem;display:block}.spending-table .spending-actions-cell{position:absolute;top:8px;right:8px}.spending-child-row .spending-row-name{padding-left:12px}.spending-row-name .spending-expand{width:40px;min-width:40px;min-height:40px}}.workspace-heading{flex-wrap:wrap;margin-bottom:8px}.workspace-heading-copy{flex:180px;min-width:0}.workspace-heading-copy p{margin:2px 0 0;font-size:.8rem}.workspace-heading-actions{flex-wrap:wrap;gap:8px;display:flex}.workspace-description,.workspace>.section-heading p{margin-bottom:8px;font-size:.85rem}.workspace>.help{margin-bottom:8px}.workspace>.section-heading{flex-wrap:wrap}.workspace .workspace-toolbar{flex-wrap:wrap;align-items:end;gap:8px;margin:10px 0 12px;display:flex}.workspace>.section-heading button:not(.compact-action),.workspace>.account-filter button:not(.compact-action),.workspace-heading-actions button:not(.compact-action),.workspace .workspace-toolbar button:not(.compact-action){min-height:36px;padding:7px 12px;font-size:.85rem;line-height:1.35}.workspace .workspace-toolbar label{margin-bottom:0;font-size:.8rem}.workspace .workspace-toolbar input,.workspace .workspace-toolbar select{min-height:36px;padding:7px 10px;font-size:.85rem;line-height:1.35}.account-overview p{margin-bottom:6px;font-size:.85rem}.account-overview .balance{font-size:1.4rem;font-weight:700}.account-card-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.account-card-title{flex:160px;min-width:0}.account-card-title .eyebrow{margin-bottom:4px}.account-card-title h2{margin-bottom:0;font-size:1.15rem}button.account-name-control{text-align:left;overflow-wrap:anywhere;background:0 0;border:0;border-radius:3px;max-width:100%;padding:0;display:block}.account-card-actions{flex-wrap:wrap;flex:none;gap:4px;display:flex}button.compact-action{border-radius:6px;justify-content:center;align-items:center;width:32px;min-width:32px;min-height:32px;padding:0;display:inline-flex}button.compact-action-delete{color:#a32b2b}@media (width<=720px){.workspace h1{font-size:1.5rem}.category-row{grid-template-columns:minmax(0,1fr) 128px}.workspace>.section-heading button:not(.compact-action),.workspace>.account-filter button:not(.compact-action),.workspace-heading-actions button:not(.compact-action),.workspace .workspace-toolbar button:not(.compact-action),.workspace .workspace-toolbar input,.workspace .workspace-toolbar select,button.compact-action{min-height:40px}button.compact-action{width:40px;min-width:40px}}.application-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.application-header+.error{margin-top:8px}.workspace .spending-toolbar{align-items:center;gap:12px}.period-type-control{border:1px solid var(--color-border);border-radius:6px;flex:none;display:inline-flex;overflow:hidden}.workspace .spending-toolbar .period-type-control button{border:0;border-radius:0;min-height:34px}.workspace .period-type-control button[aria-pressed=true]{background:var(--color-primary);color:#fff}.period-navigation{align-items:center;gap:6px;min-width:0;display:flex}.workspace .spending-toolbar .period-field{width:176px;min-width:0;margin:0}.workspace .spending-toolbar .period-field-year{width:90px}@media (width<=720px){.workspace .spending-toolbar .period-type-control button{min-height:38px}}.workspace .expected-toolbar{align-items:center}.expected-toolbar .period-field{width:176px;margin:0}.expected-table{table-layout:fixed;border-collapse:collapse;width:100%;margin-bottom:12px;font-size:.85rem}.expected-table th,.expected-table td{overflow-wrap:anywhere;border-bottom:1px solid var(--color-border);text-align:left;vertical-align:middle;padding:8px}.expected-table th[scope=row]{font-weight:400}.expected-table .help{margin:2px 0 0;display:block}.expected-actions{flex-wrap:wrap;gap:4px;display:flex}.expected-candidates,.expected-definitions{padding:0;list-style:none}.expected-candidates li,.expected-definitions li{border-bottom:1px solid var(--color-border);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 0;display:flex}.expected-candidates li span,.expected-definitions li span{flex:200px}.expected-editor{margin-bottom:12px}.expected-totals p{margin-bottom:6px;font-size:.85rem}@media (width<=900px){.expected-table thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.expected-table,.expected-table tbody,.expected-table tr{display:block}.expected-table tr{border:1px solid var(--color-border);border-radius:6px;margin-bottom:12px}.expected-table th,.expected-table td{overflow-wrap:anywhere;grid-template-columns:100px minmax(0,1fr);display:grid}.expected-table th[scope=row]{display:block}.expected-table td:before{content:attr(data-label);font-weight:650}.expected-table td .help{grid-column:2}}.activity-table{border:1px solid var(--color-border);background:#fff;border-radius:8px}.activity-table table{border-collapse:collapse;table-layout:fixed;width:100%}.activity-table thead{background:var(--color-background)}.activity-table th,.activity-table td{border-bottom:1px solid var(--color-border);text-align:left;vertical-align:middle;overflow-wrap:anywhere;padding:8px 12px;font-size:.85rem}.activity-table thead th{font-size:.78rem;font-weight:650}.activity-table thead th:first-child{width:116px}.activity-table thead th:nth-child(3){width:24%}.activity-table thead th:nth-child(4){width:160px}.activity-table thead th:last-child{width:100px}.activity-table .activity-description{font-weight:400}.activity-table tbody tr:last-child>*{border-bottom:0}.activity-meta{color:#596d64;margin-top:2px;font-size:.78rem;display:block}.activity-table .activity-amount{text-align:right;font-variant-numeric:tabular-nums}.activity-actions>div{justify-content:flex-end;gap:4px;display:flex}.activity-notes{margin-top:2px;font-size:.78rem}.activity-notes summary{cursor:pointer;color:var(--color-primary)}.activity-notes p{white-space:pre-wrap;margin:4px 0 0}.workspace .activity-pagination{align-items:center}@media (width<=800px){.activity-table table,.activity-table tbody{display:block}.activity-table thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.activity-table tbody tr{border-bottom:1px solid var(--color-border);grid-template-columns:repeat(2,minmax(0,1fr));padding:8px;display:grid;position:relative}.activity-table tbody tr:last-child{border-bottom:0}.activity-table tbody th,.activity-table tbody td{border:0;min-width:0;padding:6px}.activity-table .activity-description{grid-area:1/1/auto/-1;padding-right:104px}.activity-table .activity-date{grid-area:2/1}.activity-table .activity-amount{grid-area:2/2}.activity-table .activity-category{grid-area:3/1/auto/-1}.activity-table td[data-label]:before{content:attr(data-label);color:#596d64;margin-bottom:2px;font-size:.7rem;display:block}.activity-table .activity-actions{position:absolute;top:8px;right:8px}}.registration-table{border-collapse:collapse;table-layout:fixed;width:100%}.registration-table th,.registration-table td{text-align:left;border-bottom:1px solid var(--color-border);overflow-wrap:anywhere;padding:.5rem}.registration-table th:last-child,.registration-table td:last-child{width:6.5rem}@media (width<=800px){.registration-table thead{display:none}.registration-table tbody,.registration-table tr,.registration-table td{width:auto;display:block}.registration-table tr{border-bottom:1px solid var(--color-border);padding:.5rem 0}.registration-table td{border:0;padding:.25rem}.registration-table td:before{content:attr(data-label) ": ";font-weight:600}.registration-table td:last-child{width:auto}}.registration-page.center-card{margin:24px auto}.registration-page h1{font-size:1.75rem}.registration-page fieldset{gap:12px;display:grid}
