:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--border:#d0d0d0;--muted:#666;--surface:color-mix(in srgb, canvas 96%, canvastext 4%)}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.4}h1{margin-bottom:.5rem}.app-shell{align-items:flex-start;min-height:100vh;display:flex}.app-sidebar{border-right:1px solid var(--border);flex-direction:column;flex:none;gap:.15rem;width:200px;min-height:100vh;padding:1.5rem 1rem;display:flex;position:sticky;top:0}.app-brand{margin-bottom:1rem;padding:0 .75rem;font-weight:700}.app-sidebar a{color:inherit;border-radius:4px;padding:.45rem .75rem;font-size:.9rem;text-decoration:none}.app-sidebar a:hover{background:var(--surface)}.app-sidebar a.active{background:var(--surface);font-weight:600}.app-sidebar .nav-divider{background:var(--border);height:1px;margin:.75rem}.app-main{flex:1;min-width:0}.app-topbar{border-bottom:1px solid var(--border);z-index:1;background:canvas;flex-wrap:wrap;align-items:center;gap:1.5rem;padding:.85rem 1.5rem;display:flex;position:sticky;top:0}.workspace-context{white-space:nowrap;align-items:baseline;gap:.5rem;font-size:.95rem;display:flex}.workspace-account{font-weight:700}.workspace-period{color:var(--muted)}.app-topbar .controls{border:0;flex:1;gap:.75rem;margin:0;padding:0}.app-content{max-width:1200px;padding:1.5rem 1.5rem 4rem}.demo-notice{color:var(--muted);margin-bottom:1.5rem;font-size:.9rem}.controls{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:end;gap:1rem;margin-bottom:2rem;padding-bottom:1.5rem;display:flex}.controls label{flex-direction:column;gap:.25rem;font-size:.85rem;display:flex}.presets{gap:.5rem;display:flex}.presets button{cursor:pointer}.presets button.active{background:var(--surface);font-weight:600}.error{color:#b00020}.budget section{margin-bottom:1.5rem}.budget h3{margin-bottom:.5rem}table{border-collapse:collapse;width:100%}th,td{border-bottom:1px solid var(--border);text-align:left;padding:.35rem .25rem}th{border-bottom:2px solid var(--border);color:var(--muted);font-size:.85rem}td:last-child{text-align:right;font-variant-numeric:tabular-nums}tr.total td{border-top:2px solid var(--border);border-bottom:none;font-weight:600}.surplus{border-top:1px solid var(--border);margin-top:1rem;padding-top:1rem;font-size:1.15rem;font-weight:600}.surplus.negative,.negative{color:#b00020}.projection-summary{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:2rem;margin:0 0 1.5rem;padding-bottom:1.5rem;display:flex}.projection-summary dt{color:var(--muted);font-size:.8rem}.projection-summary dd{font-variant-numeric:tabular-nums;margin:0;font-size:1.1rem;font-weight:600}.budget-item-manager,.category-manager{margin-top:1rem}.budget-item-manager>table,.category-manager section{margin-top:1.5rem}.zero{color:var(--muted)}.create-form,.inline-form{background:var(--surface);border-radius:4px;flex-wrap:wrap;align-items:end;gap:1rem;margin:.75rem 0;padding:1rem;display:flex}.create-form label,.inline-form label{flex-direction:column;gap:.25rem;font-size:.85rem;display:flex}.create-form input,.create-form select,.inline-form input{min-width:8rem}.row-actions{flex-wrap:wrap;align-items:start;gap:.35rem;display:flex}.row-actions .inline-form{flex-basis:100%}.row-filter{gap:.5rem;margin-bottom:1rem;display:flex}.row-filter button,.row-filter a{cursor:pointer;border:1px solid var(--border);font:inherit;color:inherit;background:0 0;border-radius:999px;padding:.3rem .75rem;text-decoration:none}.row-filter button.active,.row-filter a.active{background:var(--surface);font-weight:600}.list-controls{margin:1rem 0;padding-bottom:1rem}.sort-header{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-size:.85rem}.cross-account{font-weight:600}tr.highlighted{outline:2px solid color-mix(in srgb, canvastext 50%, transparent);outline-offset:-2px;background:var(--surface)}.payroll-source-card{border-bottom:1px solid var(--border);margin-bottom:2rem;padding-bottom:1.5rem}.payroll-source-card h3{margin-bottom:.25rem}.dashboard section{margin-bottom:2rem}.dashboard h3{margin-bottom:.5rem}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem 2rem;margin:.75rem 0;display:grid}.stat-grid dt{color:var(--muted);font-size:.8rem}.stat-grid dd{font-variant-numeric:tabular-nums;margin:0;font-size:1.15rem;font-weight:600}.field-hint{color:var(--muted);font-size:.85rem}.projection-starting-point{margin-bottom:2rem}.projection-starting-point summary{cursor:pointer;font-weight:600}.baseline-fields{border:0;min-width:0;margin:1rem 0;padding:0}.baseline-fields legend{font-weight:600}.projection-starting-point table{font-size:.9rem}.auth-page{place-items:center;min-height:100vh;padding:1.5rem 1rem;display:grid}.auth-card{border:1px solid var(--border);background:var(--surface);border-radius:8px;width:100%;max-width:26rem;padding:2rem}.auth-card h1{margin:0 0 1.25rem;font-size:1.4rem;font-weight:600}.auth-brand{margin:0 0 .25rem;font-weight:700}.auth-muted{color:var(--muted)}.auth-notice{border:1px solid var(--border);background:canvas;border-radius:4px;padding:.6rem .8rem}.auth-button{color:canvas;font:inherit;cursor:pointer;background:canvastext;border:1px solid canvastext;border-radius:4px;padding:.6rem 1.1rem;font-weight:600;text-decoration:none;display:inline-block}.auth-dev-hint{border:1px dashed var(--border);border-radius:4px;margin:1.25rem 0;padding:.75rem;font-size:.85rem}.auth-dev-hint pre{white-space:pre-wrap;word-break:break-all;overflow-x:auto}.auth-signout{margin-top:1.25rem}.user-menu{margin-left:auto;font-size:.9rem;position:relative}.user-menu summary{cursor:pointer;white-space:nowrap;border-radius:4px;padding:.3rem .6rem;list-style:none}.user-menu summary::-webkit-details-marker{display:none}.user-menu summary:hover,.user-menu[open] summary{background:var(--surface)}.user-menu-panel{border:1px solid var(--border);min-width:14rem;box-shadow:0 4px 16px color-mix(in srgb, canvastext 12%, transparent);z-index:2;background:canvas;border-radius:6px;padding:.75rem;position:absolute;top:calc(100% + .25rem);right:0}.user-menu-panel p{overflow-wrap:anywhere;margin:0 0 .6rem}
