.pfb-repeater { min-width: 0; }
.pfb-repeater [data-repeat-rows] { display: grid; gap: 16px; }
.pfb-form .pfb-repeat-row { margin: 0; padding: 16px; border: 1px solid #d9e1eb; border-radius: 8px; min-width: 0; background: rgba(127,150,180,.045); }
.pfb-repeat-row legend { padding: 0 6px; font-weight: 600; font-size: .85em; }
.pfb-repeat-cells { display: grid; grid-template-columns: repeat(var(--repeat-columns), minmax(0,1fr)); gap: 12px; }
.pfb-repeat-cell { min-width: 0; }
.pfb-repeat-cell > label { display: block; margin: 0 0 6px; font-size: .9em; font-weight: 600; }
.pfb-repeat-cell input:not([type=checkbox]):not([type=radio]), .pfb-repeat-cell select, .pfb-repeat-cell textarea { width: 100%; min-width: 0; box-sizing: border-box; }
.pfb-repeat-options { display: grid; gap: 8px; }
.pfb-repeat-options label { display: flex; align-items: baseline; gap: 7px; }
.pfb-repeat-options input { width: auto; }
.pfb-form .pfb-repeater button { font: inherit; cursor: pointer; padding: 8px 12px; border: 1px solid #c8d3e1; background: #f4f7fb; color: #314a6c; border-radius: 5px; }
.pfb-form .pfb-repeater [data-add-row] { margin-top: 14px; }
.pfb-form .pfb-repeater [data-remove-row] { margin-top: 12px; padding: 5px 9px; font-size: .85em; background: transparent; }
.pfb-form .pfb-repeater button:disabled { opacity: .45; cursor: default; }
.pfb-date-difference { grid-column: 1 / -1; font-size: .9em; font-weight: 600; }
@media (max-width: 760px) { .pfb-repeat-cells { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 460px) { .pfb-repeat-cells { grid-template-columns: minmax(0,1fr); } }
