@charset "UTF-8";:root{--bg: #f7f8f5;--bg-gradient: linear-gradient(to bottom, #fafbf9, #f3f5f2);--content-bg: #fcfcfb;--panel: #ffffff;--card-line: #edf0ec;--surface-2: #f6f7f5;--surface-hover: #eef1ed;--surface-tint: #f3f8f4;--surface-tint-line: #7db49a;--input-bg: #ffffff;--input-line: #dde2dd;--soft-gray: #e6eae6;--muted-sage: #aeb8b1;--muted-line: #b8c0b8;--sage: #6e8b7a;--sage-ink: #55705f;--accent: #1f5d3a;--blue-gray: #4f5b66;--deep-slate: #24313a;--primary-bg: #24313a;--primary-text: #ffffff;--primary-hover: #31424e;--amber: #c7a86c;--amber-ink: #c8742a;--text: #24313a;--text-soft: #66727b;--text-faint: #6e7d87;--line: #e7ebe7;--success-bg: #e9f2eb;--success-text: #3e6b4d;--warning-bg: #f5ecdc;--warning-text: #7a5a20;--danger-bg: #f7e7e4;--danger-text: #9a4532;--danger: #b42318;--danger-deep: #8a2d1c;--focus: #6e8b7a;--shadow: 0 12px 30px rgba(36, 49, 58, .08);--card-shadow: 0 4px 12px rgba(36, 49, 58, .03);--sidebar-from: #1f2d36;--sidebar-to: #24313a;--th-bg: #fcfcfb;--close-strip-bg: #f6faf7;--close-strip-line: #d6e3da;--radius-lg: 20px;--radius-md: 14px;--radius-sm: 10px;color-scheme:light}html[data-theme=linen]{--bg: #f4ede2;--bg-gradient: linear-gradient(to bottom, #f8f2e9, #f1e9dc);--content-bg: #faf6ef;--panel: #fffcf7;--card-line: #ebe1d2;--surface-2: #f5efe5;--surface-hover: #eee5d7;--surface-tint: #f6efe2;--surface-tint-line: #c2a27a;--input-bg: #fffdf9;--input-line: #dccfbc;--soft-gray: #ebe3d6;--muted-sage: #bfae98;--muted-line: #c9bba6;--sage: #9a7a55;--sage-ink: #6d5236;--accent: #6b4a2b;--blue-gray: #5f5247;--deep-slate: #3b2f25;--primary-bg: #4a3a2c;--primary-text: #fff8ef;--primary-hover: #5b4837;--amber: #c9a468;--amber-ink: #b5651d;--text: #33281f;--text-soft: #6e5f52;--text-faint: #75665a;--line: #e9dfd0;--success-bg: #ecefdf;--success-text: #4f6635;--warning-bg: #f6e7cf;--warning-text: #7a5217;--danger-bg: #f6e2dc;--danger-text: #96412f;--danger: #a83a24;--danger-deep: #86321f;--focus: #9a7a55;--shadow: 0 12px 30px rgba(59, 47, 37, .1);--card-shadow: 0 4px 12px rgba(59, 47, 37, .04);--sidebar-from: #33281f;--sidebar-to: #3f3227;--th-bg: #faf6ef;--close-strip-bg: #f8f1e5;--close-strip-line: #e3d3bc}html[data-theme=sky]{--bg: #eef3f8;--bg-gradient: linear-gradient(to bottom, #f3f7fb, #eaf0f6);--content-bg: #f7fafd;--panel: #fcfdff;--card-line: #e1e9f1;--surface-2: #f1f5f9;--surface-hover: #e7eef5;--surface-tint: #eaf2fa;--surface-tint-line: #7fa6c9;--input-bg: #ffffff;--input-line: #cfdbe7;--soft-gray: #e3eaf1;--muted-sage: #a4b7c9;--muted-line: #b3c3d3;--sage: #5a86ad;--sage-ink: #3b6489;--accent: #2e5a83;--blue-gray: #4d5f70;--deep-slate: #1e3040;--primary-bg: #24405a;--primary-text: #f6fafe;--primary-hover: #2f4f6d;--amber: #c9ad72;--amber-ink: #b8701f;--text: #1e2f3d;--text-soft: #5b6d7e;--text-faint: #62758a;--line: #e0e8f0;--success-bg: #e6f2ec;--success-text: #2f6a4c;--warning-bg: #f4ecda;--warning-text: #78561c;--danger-bg: #f8e5e3;--danger-text: #9a4234;--danger: #b0281c;--danger-deep: #872a1f;--focus: #5a86ad;--shadow: 0 12px 30px rgba(30, 48, 64, .1);--card-shadow: 0 4px 12px rgba(30, 48, 64, .04);--sidebar-from: #1b3040;--sidebar-to: #233b4e;--th-bg: #f7fafd;--close-strip-bg: #eff5fa;--close-strip-line: #d3e1ed}html[data-theme=meadow]{--bg: #eef4ee;--bg-gradient: linear-gradient(to bottom, #f3f8f3, #eaf1ea);--content-bg: #f7fbf7;--panel: #fcfefc;--card-line: #dfe9df;--surface-2: #f0f6f0;--surface-hover: #e5efe5;--surface-tint: #e9f4ea;--surface-tint-line: #7fb48f;--input-bg: #ffffff;--input-line: #cfddd0;--soft-gray: #e2ebe2;--muted-sage: #a3b8a6;--muted-line: #b1c3b3;--sage: #5f9068;--sage-ink: #3f6b47;--accent: #2f5d3a;--blue-gray: #4f5f52;--deep-slate: #223327;--primary-bg: #2b4a33;--primary-text: #f5fbf6;--primary-hover: #375c41;--amber: #c7ab6c;--amber-ink: #b76d20;--text: #21302a;--text-soft: #5a6b5e;--text-faint: #627365;--line: #dfe8df;--success-bg: #e3f1e6;--success-text: #2c6541;--warning-bg: #f4ecd8;--warning-text: #78561c;--danger-bg: #f7e5e2;--danger-text: #984233;--danger: #ae2a1c;--danger-deep: #852b1f;--focus: #5f9068;--shadow: 0 12px 30px rgba(34, 51, 39, .1);--card-shadow: 0 4px 12px rgba(34, 51, 39, .04);--sidebar-from: #1f3326;--sidebar-to: #27412f;--th-bg: #f7fbf7;--close-strip-bg: #eef6ef;--close-strip-line: #cfe2d2}html[data-theme=rose]{--bg: #f8eeed;--bg-gradient: linear-gradient(to bottom, #fbf3f2, #f5ebea);--content-bg: #fcf7f6;--panel: #fffbfb;--card-line: #eddcdc;--surface-2: #f7efee;--surface-hover: #f0e3e2;--surface-tint: #f8ebea;--surface-tint-line: #c98b8f;--input-bg: #fffdfd;--input-line: #e2cfcf;--soft-gray: #eee0e0;--muted-sage: #c1a6a8;--muted-line: #cbb2b4;--sage: #b06a70;--sage-ink: #8a4c52;--accent: #7d3d44;--blue-gray: #625054;--deep-slate: #3a2628;--primary-bg: #5a3236;--primary-text: #fff6f6;--primary-hover: #6e4045;--amber: #cba46f;--amber-ink: #b46a1f;--text: #362426;--text-soft: #6f5659;--text-faint: #775e61;--line: #ecdcdc;--success-bg: #eaf1e7;--success-text: #3e6a44;--warning-bg: #f6e9d6;--warning-text: #7a561a;--danger-bg: #f9e1df;--danger-text: #9b3c31;--danger: #b5261b;--danger-deep: #8a281d;--focus: #b06a70;--shadow: 0 12px 30px rgba(58, 38, 40, .1);--card-shadow: 0 4px 12px rgba(58, 38, 40, .04);--sidebar-from: #3a2326;--sidebar-to: #472b2f;--th-bg: #fcf7f6;--close-strip-bg: #f9eeed;--close-strip-line: #e6cfd0}html[data-theme=graphite]{--bg: #0e1012;--bg-gradient: linear-gradient(to bottom, #111316, #0c0e10);--content-bg: #121417;--panel: #181b1f;--card-line: #2b3036;--surface-2: #1d2126;--surface-hover: #242930;--surface-tint: #16241f;--surface-tint-line: #3fbf8f;--input-bg: #0f1113;--input-line: #343a41;--soft-gray: #262b31;--muted-sage: #5d6771;--muted-line: #454c54;--sage: #3fbf8f;--sage-ink: #7fdcb6;--accent: #8fe3c0;--blue-gray: #aab3bd;--deep-slate: #e6e9ec;--primary-bg: #e6e9ec;--primary-text: #0e1012;--primary-hover: #ffffff;--amber: #d8b86a;--amber-ink: #e0a35a;--text: #e8eaed;--text-soft: #a3abb4;--text-faint: #98a1aa;--line: #262a2f;--success-bg: #14302a;--success-text: #8fe3c0;--warning-bg: #35301a;--warning-text: #ead38a;--danger-bg: #3a1c1a;--danger-text: #f3a49a;--danger: #ff8a7a;--danger-deep: #f3a49a;--focus: #3fbf8f;--shadow: none;--card-shadow: none;--sidebar-from: #08090a;--sidebar-to: #0e1012;--th-bg: #141719;--close-strip-bg: #131a17;--close-strip-line: #24453a;color-scheme:dark}html[data-theme=midnight]{--bg: #0d1320;--bg-gradient: linear-gradient(to bottom, #101827, #0b111c);--content-bg: #111a2a;--panel: #172234;--card-line: #2a3a55;--surface-2: #1c2839;--surface-hover: #223046;--surface-tint: #172a44;--surface-tint-line: #5b9cff;--input-bg: #0f1727;--input-line: #34466a;--soft-gray: #243147;--muted-sage: #5f7290;--muted-line: #465876;--sage: #5b9cff;--sage-ink: #93c0ff;--accent: #b0d2ff;--blue-gray: #aebbd0;--deep-slate: #e4ebf7;--primary-bg: #e4ebf7;--primary-text: #0d1320;--primary-hover: #ffffff;--amber: #d9bb6d;--amber-ink: #e3ab5d;--text: #e6ecf6;--text-soft: #a3b2c8;--text-faint: #98a8bf;--line: #243149;--success-bg: #163227;--success-text: #8fe0b8;--warning-bg: #35311d;--warning-text: #ead58f;--danger-bg: #3b1e22;--danger-text: #f5a7a1;--danger: #ff8f86;--danger-deep: #f5a7a1;--focus: #5b9cff;--shadow: none;--card-shadow: none;--sidebar-from: #080d18;--sidebar-to: #0e1626;--th-bg: #131d2e;--close-strip-bg: #13203a;--close-strip-line: #274677;color-scheme:dark}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg-gradient);color:var(--text);font-size:14px;line-height:1.5}h1,h2,h3{letter-spacing:-.02em}a{color:var(--sage-ink)}.card{background:var(--panel);border:1px solid var(--card-line);border-radius:16px;box-shadow:var(--card-shadow)}.panel{padding:18px}.stat,.tile{padding:14px 16px}.panel-title{font-size:15px;font-weight:700;margin:0 0 16px}label{display:grid;gap:6px;font-size:13px;font-weight:600;color:var(--blue-gray)}input,select{font:inherit;color:var(--text);background:var(--input-bg);border:1px solid var(--input-line);border-radius:var(--radius-sm);padding:9px 12px}select option{color:var(--text);background:var(--panel)}input:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--focus);outline-offset:2px}button{font:inherit;font-weight:600;border-radius:var(--radius-sm);padding:10px 16px;cursor:pointer;border:1px solid transparent}button[disabled]{opacity:.5;cursor:not-allowed}button.primary{background:var(--primary-bg);color:var(--primary-text)}button.primary:hover:not([disabled]){background:var(--primary-hover)}button.subtle{background:var(--surface-2);border-color:var(--input-line);color:var(--text)}button.subtle:hover:not([disabled]){background:var(--surface-hover)}button.link{background:none;border:none;color:var(--sage-ink);padding:0;text-decoration:underline;font-weight:500}.pill{display:inline-block;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap}.pill.success{background:var(--success-bg);color:var(--success-text)}.pill.warning{background:var(--warning-bg);color:var(--warning-text)}.pill.neutral{background:var(--soft-gray);color:var(--blue-gray)}.error,.notice{border-radius:var(--radius-md);padding:12px 16px;font-weight:500;margin:14px 0}.error{background:var(--danger-bg);color:var(--danger-text)}.notice{background:var(--success-bg);color:var(--success-text)}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:12px 18px;border-top:1px solid var(--line);vertical-align:middle}th{font-size:12px;color:var(--text-soft);font-weight:600;background:var(--th-bg)}.amount{text-align:right;font-variant-numeric:tabular-nums}.table-panel{overflow:hidden}.table-header,.list-header{display:flex;align-items:center;justify-content:space-between;gap:12px 14px;flex-wrap:wrap;padding:18px 18px 12px}.table-header .panel-title,.list-header .panel-title{margin:0}.table-header>p,.list-header>p{flex:1 1 100%;margin:0}.table-header .list-tools,.table-header .filters,.list-header .list-tools,.list-header .filters{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.table-header input[type=search],.list-header input[type=search]{min-width:240px}.panel>.table-header,.panel>.list-header{padding:0 0 12px}.table-panel>.panel-title{margin:0;padding:18px 18px 12px}.empty{color:var(--text-soft)}.muted{color:var(--text-soft);font-size:13px}.table-panel>.empty,.table-panel>.hint,.table-panel>.muted{margin:0;padding:0 18px 18px}.table-panel>.error,.table-panel>.notice{margin:0 18px 14px}button.icon,a.icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-soft);cursor:pointer;vertical-align:middle;text-decoration:none}button.icon:hover:not([disabled]),a.icon:hover:not([disabled]){background:var(--surface-hover);color:var(--text);border-color:var(--input-line)}button.icon.danger:hover:not([disabled]),a.icon.danger:hover:not([disabled]){color:var(--danger-text)}button.icon svg,a.icon svg{width:16px;height:16px}.row-actions{display:inline-flex;gap:2px;white-space:nowrap}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:34px;height:34px;object-fit:contain;flex-shrink:0}.brand h1{margin:0;font-size:16px;line-height:1.1;font-weight:700}.brand h1 span{display:block;font-size:13px;margin-top:4px;font-weight:400;color:var(--text-soft)}.app-shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.content{background:var(--content-bg);padding:22px 28px 28px;border-left:1px solid var(--line);display:grid;gap:16px;align-content:start}.content>*:not(router-outlet):not(.ribbon){display:contents}@media print{app-sidebar,.no-print{display:none!important}.app-shell,.content{display:block;padding:0;margin:0;border:none}body.printing-one *{visibility:hidden}body.printing-one .printing-this,body.printing-one .printing-this *{visibility:visible}body.printing-one .printing-this{position:absolute;inset:0 auto auto 0;width:100%;box-shadow:none;border:none;padding:0}}@media(max-width:1100px){.app-shell{grid-template-columns:88px 1fr}}@media(max-width:760px){.app-shell{grid-template-columns:1fr}}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}a.nav-card{display:flex;gap:14px;align-items:flex-start;padding:16px;text-decoration:none;color:var(--text)}a.nav-card .nav-card-icon{width:38px;height:38px;border-radius:10px;background:var(--soft-gray);color:var(--blue-gray);display:grid;place-items:center;font-size:18px;flex-shrink:0}a.nav-card .nav-card-body{display:grid;gap:4px}a.nav-card strong{font-size:14px}a.nav-card p{margin:0;font-size:13px;color:var(--text-soft)}a.nav-card:hover{border-color:var(--muted-sage)}.page-title{margin:0;font-size:21px;font-weight:700}.centered-page{min-height:100vh;display:grid;place-items:center;padding:22px}.centered-column{width:min(440px,100%);display:grid;gap:14px}.strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}a.tile,.card.tile{display:grid;gap:4px;padding:14px 16px;text-decoration:none;color:var(--text)}a.tile .tile-label,.card.tile .tile-label{font-size:12px;font-weight:600;color:var(--text-soft);text-transform:uppercase;letter-spacing:.04em}a.tile strong,.card.tile strong{font-size:20px;font-variant-numeric:tabular-nums}a.tile .tile-note,.card.tile .tile-note{font-size:13px;color:var(--text-soft)}a.tile .tile-note.warn,.card.tile .tile-note.warn{color:var(--danger-text);font-weight:600}a.tile:hover{border-color:var(--muted-sage)}.close-strip a.tile{border-color:var(--close-strip-line);background:var(--close-strip-bg)}.switch{display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-size:13px;font-weight:600;color:var(--text);-webkit-user-select:none;user-select:none}.switch input{position:absolute;opacity:0;width:1px;height:1px;margin:0}.switch .track{position:relative;width:40px;height:22px;border-radius:999px;background:var(--muted-line);transition:background .12s ease;flex-shrink:0}.switch .track:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:var(--panel);box-shadow:0 1px 2px #00000040;transition:transform .12s ease}.switch input:checked+.track{background:var(--sage)}.switch input:checked+.track:after{transform:translate(18px)}.switch input:focus-visible+.track{outline:2px solid var(--focus);outline-offset:2px}.switch input:disabled+.track{opacity:.5;cursor:not-allowed}.switch .switch-label{color:var(--text-soft)}.switch input:checked~.switch-label{color:var(--text)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}input::placeholder,textarea::placeholder{color:var(--text-soft);opacity:.55}.tabs{display:flex;gap:6px;margin:0;border-bottom:1px solid var(--line)}.tabs a,.tabs button{font:inherit;font-weight:600;padding:8px 14px;text-decoration:none;color:var(--text-soft);background:none;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer}.tabs a.active,.tabs button.active{color:var(--text);border-bottom-color:var(--accent, currentColor)}.topbar .tabs{border-bottom:0}.topbar .tabs a,.topbar .tabs button{font-size:13px;padding:8px 12px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--panel);color:var(--text);margin-bottom:0}.topbar .tabs a.active,.topbar .tabs button.active{background:var(--soft-gray);border-color:var(--muted-sage)}.ledger{width:100%;border-collapse:collapse;font-size:13px;margin-top:8px}.ledger th,.ledger td{text-align:left;padding:5px 8px;border-bottom:1px solid var(--line)}.ledger .num{text-align:right;font-variant-numeric:tabular-nums}.ledger .hash{font-family:monospace}
