:root{--bg:#f7f7f5;--surface:#fff;--text:#1c1c1a;--muted:#5f5e5a;--border:#1c1c1a24;--brand:#09555b;--brand-soft:#e2f2f2;--brand-text:#fff;--accent:#47c8c7;--danger:#a32d2d;--danger-soft:#fcebeb;--info-soft:#eeedfe;--info:#3c3489;--radius:10px;--font:-apple-system, "Segoe UI", system-ui, Roboto, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#161615;--surface:#1f1f1d;--text:#ececea;--muted:#a4a39e;--border:#ececea29;--brand:#47c8c7;--brand-soft:#0b3a3e;--brand-text:#062a2d;--accent:#47c8c7;--danger:#f09595;--danger-soft:#3a1717;--info-soft:#26215c;--info:#cecbf6;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);font:15px/1.5 var(--font);margin:0}a{color:var(--brand)}h1{margin:0 0 .25rem;font-size:1.5rem}h2{margin:1.75rem 0 .75rem;font-size:1.1rem}.muted{color:var(--muted)}.shell{min-height:100vh}.topbar{background:var(--surface);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.brand{align-items:center;gap:.75rem;min-width:0;display:flex}.logo{flex-shrink:0;display:block}.brand-syndicate{border-left:1px solid var(--border);flex-direction:column;min-width:0;padding-left:.75rem;display:flex}.brand strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.brand .muted{font-size:.8rem}.topbar-actions{flex-shrink:0;gap:1rem;display:flex}.tabs{background:var(--surface);border-bottom:1px solid var(--border);gap:.25rem;padding:0 1rem;display:flex;overflow-x:auto}.tabs a{color:var(--muted);white-space:nowrap;border-bottom:2px solid #0000;padding:.7rem .9rem;text-decoration:none}.tabs a.active{color:var(--text);border-bottom-color:var(--accent);font-weight:600}.content{max-width:960px;margin:0 auto;padding:1.5rem 1rem 4rem}.centered{flex-direction:column;align-items:flex-start;gap:1rem;max-width:480px;margin:15vh auto 0;padding:0 1rem;display:flex}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.page-header p{max-width:60ch;margin:0}.page-actions{flex:0 auto}.page-actions .panel{min-width:min(560px,100vw - 2rem)}.back{margin-bottom:.75rem;font-size:.9rem;text-decoration:none;display:inline-block}.button{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:8px;padding:.5rem .9rem}.button:hover{border-color:var(--brand)}.button-primary{background:var(--brand);border-color:var(--brand);color:var(--brand-text);font-weight:600}.button:disabled{opacity:.55;cursor:not-allowed}.link-button{font:inherit;color:var(--brand);cursor:pointer;background:0 0;border:none;padding:0}.cards{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.card-link{color:inherit;flex-direction:column;gap:.15rem;padding:1rem;text-decoration:none;display:flex}.card-link:hover{border-color:var(--brand)}.badge{background:var(--brand-soft);color:var(--brand);border-radius:999px;align-self:flex-start;margin-top:.5rem;padding:.1rem .5rem;font-size:.8rem;font-weight:600}.list .badge{margin:0}.badge-draft{background:var(--info-soft);color:var(--info)}.list{flex-direction:column;gap:.4rem;margin:0;padding-left:1.1rem;display:flex}.empty{color:var(--muted);border:1px dashed var(--border);border-radius:var(--radius);text-align:center;padding:1.5rem}.loading{color:var(--muted)}.table{border-collapse:collapse;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:100%;display:block;overflow:auto hidden}.table thead,.table tbody,.table tfoot{table-layout:auto;width:100%;display:table}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);padding:.55rem .8rem}.table thead th{text-transform:uppercase;letter-spacing:.03em;color:var(--muted);font-size:.8rem}.table .num{text-align:right;font-variant-numeric:tabular-nums}.table tfoot th{border-bottom:none}.table tfoot .warn th{color:var(--danger)}.table tfoot .ok th{color:var(--brand)}.table-compact td,.table-compact th{padding:.3rem .6rem}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.25rem 1.25rem}.panel h2{margin-top:0}.form{flex-direction:column;gap:.85rem;display:flex}.row{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem;display:grid}.field{flex-direction:column;gap:.3rem;display:flex}.field-label{font-size:.85rem;font-weight:600}input,select{font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:8px;width:100%;padding:.5rem .6rem}input:focus,select:focus{outline:2px solid var(--brand);outline-offset:1px}.field-invalid input,.field-invalid select{border-color:var(--danger)}.field-error{color:var(--danger);font-size:.85rem}.fraction{align-items:center;gap:.4rem;display:flex}.fraction input{width:5rem}.input-num{text-align:right;width:7rem}.form-actions{gap:.5rem;display:flex}.alert{border-radius:8px;padding:.65rem .9rem}.alert-error{background:var(--danger-soft);color:var(--danger)}.alert-info{background:var(--info-soft);color:var(--info)}@media (width<=560px){.brand-syndicate .muted{display:none}.topbar-actions{gap:.75rem;font-size:.9rem}}.subnav{flex-wrap:wrap;gap:.25rem;margin:-.25rem 0 1rem;display:flex}.subnav a{color:var(--muted);border-radius:999px;padding:.35rem .8rem;font-size:.9rem;text-decoration:none}.subnav a.active{background:var(--brand-soft);color:var(--brand);font-weight:600}.card-body{flex-direction:column;gap:.25rem;padding:1rem;display:flex}.figure{font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:600}.facts{grid-template-columns:1fr auto;gap:.15rem 1rem;margin:.5rem 0 0;font-size:.9rem;display:grid}.facts dt{color:var(--muted)}.facts dd{text-align:right;font-variant-numeric:tabular-nums;margin:0}.callout{border-radius:var(--radius);background:var(--brand-soft);color:var(--brand);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;padding:.75rem 1rem;font-weight:600;display:flex}.toolbar{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.inline-field{align-items:center;gap:.5rem;font-size:.9rem;display:inline-flex}.inline-field select,.inline-field input[type=checkbox]{width:auto}.input-invalid{border-color:var(--danger)}.badge-active,.badge-kind-payment{background:var(--brand-soft);color:var(--brand)}.badge-kind-expense,.badge-kind-reversal{background:var(--danger-soft);color:var(--danger)}.badge-kind-contribution_call,.badge-kind-opening,.badge-kind-manual{background:var(--info-soft);color:var(--info)}.table .row-alert td{background:var(--danger-soft)}.table .row-muted td{color:var(--muted)}.table .row-highlight td{background:var(--brand-soft)}.table .row-detail>td{background:var(--bg)}.nowrap{white-space:nowrap}.call-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.call{border:1px dashed var(--border);border-radius:8px;flex-direction:column;padding:.5rem .75rem;font-size:.9rem;display:flex}.call-posted{background:var(--surface);border-style:solid}.subnav-inline{margin:0}.subnav-inline button{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:.35rem .8rem;font-size:.9rem}.subnav-inline button.active{background:var(--brand-soft);color:var(--brand);font-weight:600}.bank-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.bank-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:.45rem;padding:.65rem .9rem;display:flex}.bank-main{grid-template-columns:auto 1fr auto;align-items:baseline;gap:.75rem;display:grid}.bank-description{overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem}.bank-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.suggestion{flex:1;min-width:14rem;font-size:.9rem}.bank-matched,.bank-ignored{opacity:.75}.bank-manual{border-top:1px dashed var(--border);flex-direction:column;gap:.6rem;padding-top:.5rem;display:flex}.row-inline{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.row-inline select{width:auto;min-width:10rem}.amount-in{color:var(--brand);font-weight:600}.amount-out{color:var(--danger)}h3{margin:.5rem 0 0;font-size:.95rem}
