.payroll-terms { max-width: 1100px; color: var(--c-text); }
.payroll-terms > h2 { margin: 0 0 8px; font-size: 18px; }
.payroll-terms > .dds-muted { margin: 0 0 18px; line-height: 1.6; }
.payroll-terms .ui-card { padding: 18px; margin-bottom: 16px; }
.payroll-terms-selectors { display: grid; grid-template-columns: minmax(150px, 1fr) minmax(200px, 1.4fr) minmax(160px, 1fr) auto; gap: 14px; align-items: end; }
.payroll-terms .form-field { min-width: 0; margin: 0; display: grid; gap: 6px; }
.payroll-terms input, .payroll-terms select, .payroll-terms textarea { width: 100%; box-sizing: border-box; }
.payroll-terms fieldset { border: 0; min-width: 0; margin: 0; padding: 0; }
.payroll-terms-source { margin: 0 0 18px; font-size: 13px; line-height: 1.6; }
.payroll-terms-values { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; align-items: start; margin-bottom: 20px; }
.payroll-terms-values .dds-field-note { margin: 0; font-size: 12px; line-height: 1.6; }
.payroll-terms textarea { resize: vertical; min-height: 64px; }
.payroll-terms-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.payroll-terms-history h3 { margin: 0 0 8px; font-size: 15px; }
.payroll-terms-history > .dds-muted { margin: 0 0 12px; font-size: 12px; }
.payroll-terms-history-entry { border-top: 1px solid var(--c-border-soft); padding: 12px 0; font-size: 13px; }
.payroll-terms-history-entry summary { cursor: pointer; font-weight: 500; }
.payroll-terms-history-entry p { margin: 8px 0 0; line-height: 1.6; overflow-wrap: anywhere; }
@media (max-width: 900px) { .payroll-terms-selectors { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .payroll-terms-selectors, .payroll-terms-values { grid-template-columns: 1fr; } .payroll-terms .ui-card { padding: 14px; } .payroll-terms-actions > button { flex: 1 1 auto; } }
