.openitems-kpis299{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}
.openitems-kpi299{padding:18px;border:1px solid #e3e9f2;border-radius:16px;background:#fff;box-shadow:0 7px 22px rgba(28,47,77,.06)}
.openitems-kpi299 span{display:block;color:#667085;font-size:12px;font-weight:750;text-transform:uppercase;letter-spacing:.04em}
.openitems-kpi299 strong{display:block;margin-top:7px;font-size:25px;color:#15233b}
.openitems-kpi299 small{display:block;margin-top:5px;color:#8791a3}
.openitems-kpi299.alert{border-color:#fecaca;background:#fff8f8}.openitems-kpi299.alert strong{color:#b42318}
.openitems-kpi299.good{border-color:#bbf7d0;background:#f7fff9}.openitems-kpi299.good strong{color:#087443}
.openitems-tabs299{display:flex;gap:6px;flex-wrap:wrap;padding:6px;margin-bottom:16px;background:#eef3f9;border-radius:14px}
.openitems-tabs299 button{border:0;background:transparent;color:#526175;padding:10px 14px;border-radius:10px;font-weight:750;cursor:pointer}
.openitems-tabs299 button.active{background:#fff;color:#174eac;box-shadow:0 3px 12px rgba(26,64,122,.12)}
.aging-strip299{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:14px 0 18px}
.aging-cell299{padding:13px;border-radius:13px;border:1px solid #e0e7f0;background:#f8fafc;cursor:pointer;text-align:left}
.aging-cell299 span,.aging-cell299 small{display:block;color:#667085}.aging-cell299 strong{display:block;margin:5px 0 2px;font-size:18px}
.aging-cell299.overdue{background:#fff7f7;border-color:#fecaca}.aging-cell299.overdue strong{color:#b42318}
.aging-cell299.active{outline:2px solid #2563eb;outline-offset:1px}
.openitems-filter299{display:grid;grid-template-columns:1.3fr repeat(3,minmax(145px,.55fr)) auto;gap:10px;align-items:end;margin-bottom:14px}
.openitems-filter299.card{padding:20px 22px}
.risk-pill299{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:800;background:#edf4ff;color:#1d4ed8}
.risk-pill299.warning{background:#fff4e5;color:#a15c00}.risk-pill299.danger{background:#feecec;color:#b42318}.risk-pill299.good{background:#eaf9ef;color:#087443}
.party-cell299 strong{display:block}.party-cell299 small{display:block;color:#7a8699;margin-top:3px}
.openitem-total299 td{font-weight:850;background:#f5f8fc;border-top:2px solid #ccd7e5}
.collection-level299{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:#eef3ff;color:#2856a7;font-size:12px;font-weight:800}
.collection-level299.level3{background:#feecec;color:#b42318}
.paymentrun-grid299{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:16px}
.paymentrun-card299{border:1px solid #e0e7f0;border-radius:15px;padding:16px;background:#fff}
.paymentrun-card299 span{display:block;color:#6b778c;font-size:12px}.paymentrun-card299 strong{display:block;margin-top:5px;font-size:19px}
.sepa-note299{padding:13px 15px;border-radius:12px;background:#eff6ff;border:1px solid #bfdbfe;color:#27466f;line-height:1.5}
.batch-status299{display:inline-flex;padding:5px 9px;border-radius:999px;background:#fff4db;color:#8c5a00;font-weight:800;font-size:12px}
.batch-status299.exported{background:#eaf9ef;color:#087443}.batch-status299.cancelled{background:#f1f3f6;color:#667085}
.select-column299{width:42px;text-align:center}.select-column299 input{width:17px;height:17px}
.credit-progress299{height:7px;background:#e8edf4;border-radius:999px;overflow:hidden;margin-top:6px}.credit-progress299 i{display:block;height:100%;background:#2563eb}.credit-progress299.danger i{background:#dc2626}
@media(max-width:1100px){.openitems-kpis299,.aging-strip299{grid-template-columns:repeat(2,minmax(0,1fr))}.openitems-filter299{grid-template-columns:1fr 1fr}.paymentrun-grid299{grid-template-columns:1fr}}
@media(max-width:680px){.openitems-kpis299,.aging-strip299,.openitems-filter299{grid-template-columns:1fr}.openitems-filter299.card{padding:16px}}

@media print{
  .openitems-tabs299,.openitems-filter299,.page-actions,.finance-nav2311{display:none!important}
  .openitems-kpi299,.card{box-shadow:none!important}
}
