#irpfClients { padding: 20px 0; color: #172b4d; }
.ownerLabel[hidden],.municipioLabel[hidden] { display:none !important; }
.irpfHeading,.irpfToolbar,.irpfActions { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.irpfHeading { justify-content:space-between; margin-bottom:18px; }
.irpfHeading h2 { font-size:22px; margin:0; }
.irpfHeading > button { width:auto; flex:0 0 auto; }
.irpfHeading span { font-size:13px; color:#53647b; }
.irpfToolbar { margin-bottom:14px; }
.irpfToolbar label { font-size:13px; display:grid; gap:5px; }
.irpfToolbar label:first-child { flex:1; min-width:180px; }
.irpfToolbar input,.irpfToolbar select { min-height:38px; width:100%; border:1px solid #c6d0dd; border-radius:4px; padding:8px 10px; background:#fff; }
.irpfTableWrap { overflow:auto; border:1px solid #d7dfe8; background:#fff; border-radius:6px; }
.irpfTable { width:100%; border-collapse:collapse; font-size:13px; text-align:left; }
.irpfTable th { background:#f1f4f8; font-weight:600; padding:11px 12px; white-space:nowrap; }
.irpfTable td { padding:11px 12px; border-top:1px solid #e4e9ef; vertical-align:middle; }
.irpfTable small { display:block; color:#53647b; margin-top:4px; }
.irpfTable button { white-space:nowrap; }
.irpfBadge { display:inline-block; border-radius:4px; padding:3px 6px; background:#e3f6ea; color:#146b42; font-size:11px; }
.irpfBadge.inactive { background:#edf0f4; color:#53647b; }
.irpfError { color:#b42318; white-space:normal; overflow-wrap:anywhere; }
.irpfDialog { width:720px; max-width:calc(100vw - 24px); max-height:calc(100dvh - 24px); border:0; border-radius:8px; padding:0; color:#172b4d; font-family:Segoe UI,Arial,sans-serif; }
.irpfDialog::backdrop { background:#172b4d80; }
.irpfDialog form { display:block; padding:22px; }
.irpfDialog h3 { margin:0 0 8px; font-size:20px; }
.irpfDialog h4 { margin:24px 0 12px; font-size:16px; }
.irpfSubtitle { margin:0 0 20px; font-size:13px; color:#53647b; }
.irpfGrid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.irpfGrid label { display:grid; gap:5px; font-size:13px; min-width:0; }
.irpfGrid input,.irpfGrid select,.irpfGrid textarea { width:100%; min-width:0; box-sizing:border-box; font-size:14px; min-height:38px; border:1px solid #c6d0dd; border-radius:4px; padding:8px 10px; background:#fff; }
.irpfWide { grid-column:1 / -1; }
.irpfActions { justify-content:flex-end; margin-top:18px; }
.irpfEmpty { padding:24px; color:#53647b; }
.irpfAgreement { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:12px 0; border-bottom:1px solid #e4e9ef; font-size:13px; overflow-wrap:anywhere; }
.irpfAgreement small { display:block; color:#53647b; margin-top:5px; }
#irpfClients button,.irpfDialog button { min-height:36px; letter-spacing:0; border:1px solid #c6d0dd; border-radius:4px; padding:8px 12px; background:#fff; color:#174b88; cursor:pointer; width:auto; white-space:nowrap; flex-shrink:0; }
#irpfClients button.primary,.irpfDialog button.primary { background:#0c66e4; border-color:#0c66e4; color:#fff; }
@media (max-width:600px) {
 .irpfGrid { grid-template-columns:1fr; }
 .irpfDialog form { padding:16px; }
 .irpfHeading h2 { font-size:20px; }
 .irpfHeading>div { display:grid; gap:6px; }
 .irpfActions button { flex:1; }
 .irpfAgreement { align-items:flex-start; }
}
