/* Generated by tools/sync_public_hub_ui.mjs from database-worker/public/money.html (its inline <style> block). Do not edit. */
/* lane VIZ (2026-09-28): "Follow the money" -- app/money.js over
     GET /api/money-flows (src/money.js), drawn with the shared chart kit */
  * { box-sizing:border-box; }
  header { padding:14px 22px; border-bottom:2px solid var(--border-strong);
           display:flex; align-items:center; gap:14px; flex-wrap:wrap; justify-content:space-between; }
  header h1 { font-size:19px; margin:0; }
  header .sub { color:var(--muted); font-size:12.5px; margin-top:2px; }
  p.intro { color:var(--muted); font-size:13px; max-width:78ch; margin:0 0 16px; }
  section.card { background:var(--panel); border:1px solid var(--border); border-radius:9px;
                 padding:16px 18px; margin:0 0 18px; }
  section.card h2 { font-size:15px; margin:0 0 4px; }
  .lede { color:var(--muted); font-size:12.5px; margin:0 0 12px; max-width:78ch; }
  .mf-controls { display:flex; flex-wrap:wrap; gap:10px 18px; align-items:flex-end; margin:4px 0 10px; }
  .mf-controls label { display:flex; flex-direction:column; gap:3px; font-size:11.5px; color:var(--faint);
                       flex:1 1 260px; min-width:0; max-width:420px; }
  .mf-controls select { min-height:34px; font:inherit; font-size:13px; color:var(--text); background:var(--panel2);
                        border:1px solid var(--control-border); border-radius:5px; padding:4px 8px; width:100%; }
  .mf-trail { display:flex; flex-wrap:wrap; align-items:center; gap:4px 6px; font-size:12.5px; margin:2px 0 10px;
              list-style:none; padding:0; }
  .mf-trail li { display:inline-flex; align-items:center; gap:6px; }
  .mf-trail li + li::before { content:"\2192"; color:var(--faint); }
  .mf-trail button { background:transparent; border:0; padding:2px 0; font:inherit; color:var(--gold); cursor:pointer;
                     text-decoration:underline; text-underline-offset:2px; min-height:24px; }
  .mf-trail [aria-current="true"] { color:var(--text); font-weight:600; }
  .mf-summary { font-size:13px; margin:0 0 6px; }
  .mf-links { display:flex; flex-wrap:wrap; gap:6px 16px; font-size:12.5px; margin:0 0 14px; }
  .mf-pair { display:grid; gap:16px; grid-template-columns:repeat(auto-fit, minmax(min(100%, 420px), 1fr)); }
  .mf-pair h3 { font-size:13.5px; margin:0 0 8px; }
  .mf-pair > div { min-width:0; }   /* a wide numbers table scrolls in its own box, not the page */
  .mf-note { color:var(--faint); font-size:11.5px; margin:10px 0 0; }
  .state { color:var(--muted); font-size:13.5px; padding:10px 2px; }
  .state.error { color:var(--anti-text); display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
  .state.error button { background:var(--panel2); color:var(--text); font:inherit;
    border:1px solid var(--control-border); border-radius:5px; padding:5px 12px; min-height:24px; cursor:pointer; }
  #page[hidden] { display:none; }
  a { color:var(--gold); }
  a:focus-visible, button:focus-visible, select:focus-visible, [tabindex]:focus-visible {
    outline:2px solid var(--gold); outline-offset:2px; border-radius:3px; }
  .vh { position:absolute; width:1px; height:1px; margin:-1px; padding:0;
        overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0; }
  [hidden] { display:none !important; }
