:root{--fs:14px;--fs-sm:11px;--ctl-h:26px;--fg:#000;--brand:#2563eb}
*{box-sizing:border-box}html,body{min-height:100%;background:#fff}body{margin:0;padding:32px;color:var(--fg);font:var(--fs)/1.25 system-ui,Segoe UI,Roboto,Arial,sans-serif}
header{position:sticky;top:32px;z-index:5;padding:8px 0;padding-right:180px}
.head-actions{position:fixed;top:8px;right:8px;display:flex;align-items:center;gap:8px}
#inputs{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px;max-height:20vh;overflow:auto;margin-bottom:8px}
.field{display:flex;flex-direction:column;align-items:flex-start;gap:2px;margin:0 8px 8px 0}
.term,.alim{display:none}
#inputs .form-control{width:auto;max-width:5.5em;height:var(--ctl-h);padding:0 4px}
#inputs input[data-pct]{max-width:3.5em}
#inputs input[type=date],#inputs input[type=month]{max-width:9em}
#salaryEnd,#alimEnd{max-width:11em}
#inputs .form-check-input{margin-left:0}
#chartWrap{height:60vh;background:#fff;position:relative}
#cnv{width:100%;height:100%;display:block}
.build-info{font-size:11px;color:#6b7280}
dialog{border:1px solid #cbd5e1;border-radius:12px;padding:0;max-width:920px;width:min(920px,92vw)}
.dlg-head{padding:12px 16px;background:#f8fafc;border-bottom:1px solid #e5e7eb;font-weight:600}
.dlg-body{padding:12px 16px}.dlg-body pre{white-space:pre-wrap;font:12.5px/1.45 ui-monospace,Menlo,Consolas,monospace}
.dlg-actions{display:flex;justify-content:flex-end;gap:10px;padding:12px 16px;border-top:1px solid #e5e7eb}
@media (max-width:520px){:root{--fs:13px;--fs-sm:10px;--ctl-h:24px}}
