
.pt-q { display: grid; gap: var(--sp-2); }
.pt-q .field__label { font-weight: var(--fw-medium); line-height: 1.4; }
.pt-q .seg { max-width: 220px; }
.field-pair--wrap { align-items: start; }
.pt-group-h { font-size: var(--fs-15); font-weight: var(--fw-semibold); color: var(--green-800); margin: 0; }
.input input:disabled { color: var(--ink-400, var(--ink-600)); background: transparent; cursor: not-allowed; }
.input:has(input:disabled) { background: var(--ink-50); }
.seg button:disabled { color: var(--ink-400, var(--ink-600)); cursor: not-allowed; }
.pt-tiers { display: grid; gap: var(--sp-2); }
.pt-tier { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) 44px; gap: var(--sp-2); align-items: start; }
.pt-tier__open { display: flex; align-items: center; min-height: 48px; padding: 0 var(--sp-3); border: 1px dashed var(--green-300); border-radius: 10px; color: var(--color-text-muted); font-size: var(--fs-15); }
.pt-tier .icon-btn { margin-top: 2px; }
.pt-tier .icon-btn[hidden] { display: block; visibility: hidden; }
.pt-tier .field__error { grid-column: 1 / -1; }
.pt-tiers-actions { display: flex; flex-wrap: wrap; gap: var(--sp-2); }
.ledger tr.row-line th[scope="row"] { font-weight: var(--fw-regular, 400); color: var(--color-text-muted); padding-left: var(--sp-4); }
.ledger tr.row-line td.amt { font-weight: var(--fw-regular, 400); color: var(--color-text-muted); }
.pt-flag { display: block; }
.pt-flag[hidden] { display: none; }
.result__sub .pt-warn { color: var(--color-error); font-weight: var(--fw-semibold); }
.pt-dates input[type="date"] { font: inherit; min-height: 48px; width: 100%; background: transparent; border: 0; color: inherit; padding: 0 var(--sp-3); }
.pt-dates .input { padding: 0; }
@media screen and (max-width: 420px) { .pt-tier { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 44px; } }
.pt-modes { display: grid; }
.pt-modes > [data-panel].is-off { display: none; }
.pt-modes > [data-panel] { display: grid; gap: var(--sp-4); align-content: start; }
#ledger td.calc { white-space: normal; text-align: right; }
@media screen and (min-width: 480px) {
  #ledger td.calc, #ledger .nw { white-space: nowrap; }
  body:has(#pay-label) #ledger th[scope="row"] { white-space: nowrap; } 
}
.field-pair:not(.field-pair--wrap):not(.field-pair--3) { row-gap: 0; }
.field-pair:not(.field-pair--wrap):not(.field-pair--3) > .field { grid-row: span 2; grid-template-rows: subgrid; row-gap: 6px; }
.field-pair:not(.field-pair--wrap):not(.field-pair--3):has(.field__error:not([hidden])) > .field { grid-row: span 3; }
@media screen and (max-width: 420px) { #pay-unit { display: none; } }
