:root{--paper:#f7f5ef;--cream:#eeeade;--ink:#15241e;--ink-2:#0c1611;--forest:#2f6b4f;--forest-2:#26573f;--forest-bg:#e0ede6;--forest-bg-soft:#f2f7f4;--lime:#dfff64;--lime-2:#c7e84a;--lime-bg:#f6ffd6;--bg:var(--paper);--surface:#fff;--surface-2:var(--cream);--text:#17211d;--text-2:#3a453f;--muted:#66716c;--border:#e2ded2;--border-strong:#cfcabc;--accent:var(--forest);--accent-text:#fff;--primary:var(--ink);--primary-hover:var(--ink-2);--primary-text:#fff;--nav-active-bg:var(--lime-bg);--nav-active-text:var(--ink);--count-bg:var(--lime);--count-text:var(--ink);--fresh:#2f855a;--aging:#b7791f;--overdue:#c0392b;--danger-bg:#fbeeec;--danger-text:#8f2a21;--ok-bg:#eaf5ee;--ok-text:#1f5c3d;--shadow:0 1px 2px #17211d0d, 0 4px 14px -6px #17211d1a;--radius:8px;--radius-card:6px 6px 24px 6px;--font:"DM Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display:Manrope, "DM Sans", system-ui, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--font);font-size:15px;line-height:1.5}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);min-height:100dvh;color:var(--text);-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}a{color:var(--accent);text-underline-offset:2px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}main{max-width:1200px;padding:1.25rem 1rem calc(1.5rem + env(safe-area-inset-bottom,0px));margin:0 auto}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.015em;text-wrap:balance;font-weight:800}h1{margin:.25rem 0 1rem;font-size:1.5rem}h2{margin:0 0 .6rem;font-size:1.05rem;font-weight:700}.topbar{z-index:10;padding:calc(.6rem + env(safe-area-inset-top,0px)) 1rem .6rem;background:color-mix(in srgb, var(--surface) 94%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.6rem 1.25rem;display:flex;position:sticky;top:0}.topbar .brand{font-family:var(--font-display);letter-spacing:-.015em;color:var(--text);align-items:center;gap:.6rem;font-size:1.05rem;font-weight:800;text-decoration:none;display:inline-flex}.topbar .mark{background:var(--ink);width:2rem;height:2rem;color:var(--lime);border-radius:8px;flex:none;place-items:center;display:inline-grid}.topbar .mark svg{width:1.1rem;height:1.1rem}.topbar nav{flex-wrap:wrap;flex:1;gap:.25rem;display:flex}.topbar nav a{border-radius:var(--radius);color:var(--text-2);align-items:center;gap:.45rem;padding:.4rem .75rem;font-weight:500;text-decoration:none;transition:background-color .15s;display:inline-flex}.topbar nav a:hover{background:var(--surface-2);color:var(--text)}.topbar nav a[aria-current=page]{background:var(--nav-active-bg);color:var(--nav-active-text);font-weight:600}.topbar nav a.dev{color:var(--muted);border:1px dashed var(--border-strong)}.topbar .count{background:var(--count-bg);min-width:1.35rem;height:1.35rem;color:var(--count-text);font-variant-numeric:tabular-nums;border-radius:999px;justify-content:center;align-items:center;padding:0 .4rem;font-size:.72rem;font-weight:700;display:inline-flex}.topbar .user{color:var(--muted);font-size:.9em}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow);padding:1.1rem 1.25rem}@media (width<=640px){.card{padding:1rem}}.muted{color:var(--muted)}.error{background:var(--danger-bg);color:var(--danger-text);border-radius:var(--radius);padding:.6rem .8rem}.ok{background:var(--ok-bg);color:var(--ok-text);border-radius:var(--radius);padding:.6rem .8rem}.pill{background:var(--surface-2);color:var(--text-2);white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;padding:.1rem .6rem;font-size:.8em;font-weight:500;display:inline-flex}.band-fresh{color:var(--fresh)}.band-aging{color:var(--aging);font-weight:600}.band-overdue{color:var(--overdue);font-weight:700}label{color:var(--text-2);margin-bottom:.75rem;font-size:.875rem;font-weight:500;display:block}label>input,label>select,label>textarea{width:100%;color:var(--text);margin-top:.3rem;font-weight:400;display:block}input,select,textarea,button{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);padding:.45rem .65rem}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);outline:none}input::placeholder,textarea::placeholder{color:var(--muted)}@media (width<=640px){input,select,textarea{min-height:2.75rem;font-size:16px}}button{cursor:pointer;padding:.5rem .9rem;font-weight:600;transition:background-color .15s,color .15s;box-shadow:0 1px 2px #17211d0d}button:hover{background:var(--surface-2)}button.primary{background:var(--primary);color:var(--primary-text);border-color:var(--primary)}button.primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}button:disabled{opacity:.5;cursor:not-allowed}button:disabled:hover{background:var(--surface)}button.primary:disabled:hover{background:var(--primary)}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:.6rem .65rem}tbody tr:last-child td{border-bottom:0}tbody tr:hover td{background:color-mix(in srgb, var(--surface-2) 55%, transparent)}th{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:.75rem;font-weight:600}.table-wrap{padding:0;overflow-x:auto}.table-wrap table{min-width:720px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
