:root{--bg:#f6f7f9;--surface:#fff;--border:#e3e6ea;--text:#1b1f24;--muted:#6b7280;--accent:#1f6feb;--debit:#0f766e;--credit:#b45309;--radius:10px}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:14px;line-height:1.5}.app{max-width:1100px;margin:0 auto;padding:32px 24px 64px}.app-header h1{letter-spacing:-.01em;margin:0;font-size:20px}.app-header p{color:var(--muted);margin:4px 0 0}.nav{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);gap:4px;margin:24px 0;padding:4px;display:flex;overflow-x:auto}.nav a{color:var(--muted);text-align:center;white-space:nowrap;border-radius:7px;flex:1;padding:9px 14px;font-weight:500;text-decoration:none}.nav a:hover{background:var(--bg);color:var(--text)}.nav a.active{background:var(--accent);color:#fff}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:16px;display:flex}.page-head h2{margin:0;font-size:17px}.page-head .hint{color:var(--muted)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.card+.card{margin-top:16px}.card-head{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;padding:12px 16px;display:flex}.card-head h3{margin:0;font-size:14px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:9px 16px}thead th{background:var(--surface);color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600;position:sticky;top:0}tbody tr:last-child td{border-bottom:0}tbody tr:hover td{background:#fafbfc}.num{text-align:right;font-variant-numeric:tabular-nums}.code{color:var(--muted);font-variant-numeric:tabular-nums}.wrap{white-space:normal}tfoot td,tr.total td{border-top:2px solid var(--border);background:#fafbfc;font-weight:600}.indent{padding-left:32px}.muted{color:var(--muted)}.dr{color:var(--debit)}.cr{color:var(--credit)}.tag{border:1px solid var(--border);background:var(--bg);color:var(--muted);border-radius:999px;padding:2px 8px;font-size:12px;display:inline-block}.badge{border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-block}.badge.ok{color:#16794c;background:#e7f6ee}.badge.bad{color:#b42318;background:#fdeaea}.controls{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}select,input[type=search]{border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;border-radius:8px;padding:8px 10px}input[type=search]{min-width:220px}.entry-head td{background:#fafbfc;font-weight:600}.empty{text-align:center;color:var(--muted);padding:32px 16px}.topic-head{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:baseline;gap:12px;padding:12px 16px;display:flex}.topic-head:hover{background:#fafbfc}.topic-head[aria-expanded=true]{border-bottom:1px solid var(--border)}.topic-detail{color:var(--muted);max-width:78ch;margin:0;padding:14px 16px}.topic-head+.topic-detail{border-bottom:1px solid var(--border)}.pagination{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding:10px 14px;display:flex}.pager{flex-wrap:wrap;gap:4px;display:flex}.pager button{border:1px solid var(--border);background:var(--surface);min-width:34px;color:var(--text);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;border-radius:7px;padding:5px 10px}.pager button:hover:not(:disabled){background:var(--bg)}.pager button:disabled{color:var(--muted);cursor:not-allowed;opacity:.55}.pager button[aria-current=page]{border-color:var(--accent);background:var(--accent);color:#fff}.pager-gap{color:var(--muted);padding:5px 2px}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.link-button{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;padding:8px 12px}.link-button:hover{background:var(--bg);text-decoration:none}.controls.spread{justify-content:space-between}.period label{color:var(--muted);align-items:center;gap:8px;display:inline-flex}.period input[type=date]{border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;border-radius:8px;padding:8px 10px}.reset{border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;border-radius:8px;padding:8px 12px}.reset:hover{background:var(--bg)}tr.result td{border-top:1px solid var(--border);background:#f4f7fb;font-weight:600}tr.result.strong td{border-top:2px solid var(--accent);background:#eaf1fc}.metrics{background:var(--border);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1px;display:grid}.metric{background:var(--surface);padding:14px 16px}.metric span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;display:block}.metric strong{font-variant-numeric:tabular-nums;font-size:18px}.t-account td,.t-account th{white-space:normal}.t-account td:nth-child(2),.t-account th:nth-child(2){border-right:2px solid var(--border)}.t-account .carried{color:var(--muted);font-style:italic}
