.recurring-entry{margin-bottom:16px}
.recurring-totals{display:flex;gap:12px;flex-wrap:wrap;margin:14px 0}.recurring-totals span{border:1px solid var(--line,#dce5e4);border-radius:8px;padding:8px 12px;background:var(--soft,#f4f8f7)}
.recurring-totals b{font-size:1.2em;margin-right:5px}.recurring-controls{display:grid;grid-template-columns:minmax(180px,1fr) minmax(150px,.7fr) auto;align-items:end;gap:12px}.recurring-controls label{min-width:0}.recurring-controls .actions{margin:0;gap:6px}
.recurring-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:13px}.recurring-table caption{text-align:left;font-weight:700;padding:10px 0}.recurring-table th{font-size:12px;text-align:left;background:var(--soft,#f4f8f7);padding:8px}.recurring-table td{padding:8px;vertical-align:top;border-bottom:1px solid var(--line,#dce5e4);overflow-wrap:anywhere}.recurring-table th:nth-child(1){width:58px}.recurring-table th:nth-child(2){width:32%}.recurring-table th:nth-child(3){width:21%}.recurring-table th:nth-child(4){width:15%}.recurring-table th:nth-child(5){width:17%}.recurring-table th:nth-child(6){width:100px}.recurring-table small{display:block;line-height:1.4;margin-top:3px;color:var(--muted,#677b85)}.recurring-table .income{color:#13734c}.recurring-table .expense{color:#bd3545}.recurring-table button{padding:6px 9px;font-size:12px;margin-bottom:4px}.recurring-table input[type=checkbox]{width:18px;height:18px;margin:4px}
.recurring-tag{display:inline-block!important;padding:2px 5px;border-radius:4px;background:#edf3f7;color:#385b70!important;font-size:11px}.recurring-tag.warning{background:#fff3dc;color:#8b5b08!important}.recurring-table [data-proposal-details]>td{background:var(--soft,#f6f9f8);padding:14px}.recurring-table fieldset{border:0;padding:0;margin:0;min-width:0}.recurring-table legend{font-weight:700;margin-bottom:10px}.recurring-table .form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.recurring-table .form-grid label{min-width:0}.recurring-table .form-grid input,.recurring-table .form-grid textarea{font-size:13px}.recurring-table details{margin-top:10px}.recurring-evidence{padding:0;list-style:none;max-height:240px;overflow:auto}.recurring-evidence li{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line,#dce5e4);padding:6px 0}.recurring-evidence span{overflow-wrap:anywhere}.recurring-evidence strong{white-space:nowrap}
.recurring-pagination{display:flex;justify-content:center;align-items:center;gap:12px;margin:12px 0}.recurring-submit{position:sticky;bottom:0;background:var(--panel,#fff);padding:12px 0;border-top:1px solid var(--line,#dce5e4);flex-wrap:wrap;z-index:2}.recurring-submit span{font-size:12px;margin-right:auto}
.recurring-mobile-sort{display:none}.recurring-help{font-size:13px}
@media(max-width:1100px){.recurring-controls{grid-template-columns:1fr 1fr}.recurring-controls .actions{grid-column:1/-1}.recurring-table .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.recurring-table{font-size:12px}.recurring-table th:nth-child(3){width:18%}.recurring-table th:nth-child(2){width:29%}}
@media(max-width:850px){.recurring-table,.recurring-table tbody{display:block}.recurring-table thead{display:none}.recurring-table tr[data-proposal]{display:grid;grid-template-columns:30px minmax(0,1fr) minmax(100px,.7fr);border:1px solid var(--line,#dce5e4);border-radius:8px;margin-top:8px;padding:8px;gap:6px}.recurring-table td{border:0;padding:2px;min-width:0}.recurring-table td:first-child{grid-row:1/4}.recurring-table td:nth-child(2){grid-column:2/4}.recurring-table td:nth-child(3){grid-column:2}.recurring-table td:nth-child(4){grid-column:3}.recurring-table td:nth-child(5){grid-column:2}.recurring-table td:nth-child(6){grid-column:3}.recurring-table td:nth-child(4)::before{content:'Importe previsto';display:block;font-size:11px;color:#677b85}.recurring-table [data-proposal-details]:not([hidden]),.recurring-table [data-proposal-details]>td{display:block}.recurring-table [data-proposal-details]>td{padding:12px}.recurring-submit{position:static}.recurring-controls{grid-template-columns:1fr}.recurring-table .form-grid{grid-template-columns:1fr}.recurring-entry{align-items:flex-start;flex-direction:column;gap:8px}.recurring-totals{gap:5px}.recurring-totals span{font-size:12px;padding:6px}.recurring-evidence li{font-size:12px}}
@media(max-width:850px){.recurring-table caption{display:block;width:100%}.recurring-mobile-sort{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.recurring-mobile-sort button{font-size:12px}}
