:root{--bg:#f8fafc;--surface:#fff;--text:#0f172a;--muted:#64748b;--accent:#0f766e;--negative:#b91c1c;--border:#e2e8f0;color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme:dark){:root{--bg:#0b1120;--surface:#111827;--text:#e5e7eb;--muted:#94a3b8;--accent:#2dd4bf;--negative:#f87171;--border:#1f2937}}body{background:var(--bg);margin:0}.container{max-width:960px;margin:0 auto;padding:2rem 1rem}h1{color:var(--accent);margin-bottom:.25rem}.muted{color:var(--muted)}.cards{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;padding:0;list-style:none;display:grid}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:.25rem;padding:1rem;display:flex}.card-title{font-weight:600}.money{font-variant-numeric:tabular-nums;font-size:1.25rem}.money.negative{color:var(--negative)}.auth-form{gap:1rem;max-width:24rem;margin-bottom:1rem;display:grid}.auth-form label{gap:.4rem;display:grid}input,button{font:inherit;padding:.6rem}button{cursor:pointer}section{margin:2rem 0}.section-heading,.actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.section-heading{justify-content:space-between}.entry-form{gap:1rem;max-width:32rem;margin-bottom:1rem}.entry-form label,.filters label{gap:.35rem;display:grid}select{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:.6rem}input,button{color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:6px}button:hover{border-color:var(--accent)}button:disabled{opacity:.6;cursor:wait}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.filters{flex-wrap:wrap;gap:1rem;margin:1rem 0;display:flex}.table-wrap{overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%}th,td{border-bottom:1px solid var(--border);padding:.75rem}.category-chart{gap:1rem;max-width:42rem;padding:0;list-style:none;display:grid}.chart-track{background:var(--border);border-radius:6px;height:.65rem;margin-top:.4rem;overflow:hidden}.chart-bar{background:var(--accent);height:100%}.currency-overview{margin-bottom:2rem}.card small .money{font-size:inherit}@media (width<=600px){.container{padding:1rem}.section-heading{align-items:flex-start}.actions button{min-height:44px}}.import-form{flex-wrap:wrap;align-items:end;gap:1rem;margin-bottom:1rem;display:flex}.import-form label,.import-form fieldset{gap:.4rem;display:flex}.import-form label{flex-direction:column;max-width:100%}.import-form input[type=file]{max-width:100%}.import-form fieldset{border:0;gap:1rem;margin:0;padding:0}.choices{flex-wrap:wrap;gap:.5rem;display:flex}.import-summary{flex-wrap:wrap;gap:1.5rem;padding:0;list-style:none;display:flex}.balance-check{border:1px solid var(--border);border-left:4px solid var(--negative);background:var(--surface);border-radius:8px;padding:.75rem 1rem}.balance-check.ok{border-left-color:var(--accent)}.balance-check .money{font-size:inherit}.table-scroll{overflow-x:auto}.import-rows{border-collapse:collapse;width:100%;font-size:.9rem}.import-rows th,.import-rows td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:.4rem .6rem}.import-rows .num{text-align:right}.import-rows .money{font-size:inherit}.import-rows .row-error{color:var(--negative)}.import-rows .row-header{background:var(--surface);font-weight:600}.choices button.suggested,.choices button[aria-selected=true]{border-color:var(--accent)}.import-guide .choices{margin:.5rem 0}.import-steps li{margin-bottom:.5rem}.import-steps code{overflow-wrap:anywhere}details.card>summary{cursor:pointer;flex-wrap:wrap;align-items:baseline;gap:.5rem;display:flex}details.card>summary .money{font-size:inherit}details.card{margin-bottom:.75rem}.main-nav{gap:1.25rem;margin:.5rem 0;display:flex}.main-nav a{color:var(--text);border-bottom:2px solid #0000;padding-bottom:.2rem;text-decoration:none}.main-nav a[aria-current=page]{color:var(--accent);border-bottom-color:var(--accent)}.net-worth-summary .money{font-size:inherit}.main-nav{flex-wrap:wrap}.feature-page form,.feature-page fieldset{border:1px solid var(--border);border-radius:8px;flex-wrap:wrap;align-items:end;gap:1rem;margin:1rem 0;padding:1rem;display:flex}.feature-page label{flex-direction:column;gap:.4rem;display:flex}.feature-page textarea{width:min(32rem,75vw);min-height:5rem;font:inherit;padding:.6rem}.feature-page select{font:inherit;padding:.6rem}.feature-page table{border-collapse:collapse;width:100%;display:block;overflow-x:auto}.feature-page th,.feature-page td{text-align:left;border-bottom:1px solid var(--border);padding:.6rem}.feature-page table .money{font-size:inherit;white-space:nowrap}.feature-page .card{overflow-wrap:anywhere;margin:1rem 0}.feature-page dl{flex-wrap:wrap;gap:1rem 2rem;display:flex}.feature-page dd{margin:.3rem 0}.feature-page button{margin:.2rem}
