/* RECATOOLS — Personal Loan Payoff Calculator */
.ppl-inputs {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
    margin-bottom: 1rem;
}
@media (max-width: 640px) { .ppl-inputs { grid-template-columns: 1fr; } }

.input-row { margin-bottom: .75rem; }
.input-row label {
    display: block;
    font-size: .75rem;
    font-weight: 600;
    color: #6b6760;
    margin-bottom: .25rem;
}
.input-row .input-prefix-wrap {
    display: flex; align-items: stretch;
    border: 1px solid #ebebeb; border-radius: 6px;
    background: #fff; overflow: hidden;
}
.input-row .ipx-label {
    padding: .5rem .65rem; background: #f0ede9;
    font-size: .8rem; font-weight: 600; color: #6b6760;
    border-right: 1px solid #ebebeb;
}
.input-row .ipx-label.ipx-suffix { border-left: 1px solid #ebebeb; border-right: none; }
.input-row input[type="number"] {
    flex: 1; border: none;
    padding: .5rem .65rem; font-size: .9rem;
    font-family: inherit; background: transparent;
    color: #1a1814; width: 100%; box-sizing: border-box;
}
.input-row input[type="number"]:focus { outline: none; box-shadow: inset 0 0 0 2px #E8472F; }

.calc-btn {
    width: 100%; margin: .5rem 0;
    padding: .75rem 1.25rem; background: #E8472F;
    color: #fff; border: none; border-radius: 8px;
    font-size: .95rem; font-weight: 700; cursor: pointer;
    font-family: inherit;
}
.calc-btn:hover { background: #c8391f; }

.summary-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .5rem .75rem;
    margin: 1rem 0;
    padding: 1rem;
    background: #fafaf9;
    border: 1px solid #ebebeb;
    border-radius: 10px;
    font-size: .875rem;
}
.summary-grid .sg-row {
    display: contents;
}
.summary-grid .sg-label { color: #6b6760; padding: .35rem 0; border-bottom: 1px dashed #ebebeb; }
.summary-grid .sg-value {
    text-align: right;
    font-weight: 700;
    color: #1a1814;
    padding: .35rem 0;
    border-bottom: 1px dashed #ebebeb;
}
.summary-grid .sg-row--accent .sg-value { color: #16a34a; }
.summary-grid .sg-row:last-child .sg-label,
.summary-grid .sg-row:last-child .sg-value { border-bottom: none; }

.amort-table-wrap {
    margin-top: 1rem;
    overflow-x: auto;
    border: 1px solid #ebebeb;
    border-radius: 10px;
    max-height: 380px;
    overflow-y: auto;
}
.amort-table {
    width: 100%;
    border-collapse: collapse;
    font-size: .8rem;
}
.amort-table thead { position: sticky; top: 0; background: #fafaf9; }
.amort-table th {
    text-align: right;
    padding: .5rem .65rem;
    font-size: .68rem;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: #6b6760;
    font-weight: 700;
    border-bottom: 1px solid #ebebeb;
}
.amort-table th:first-child { text-align: left; }
.amort-table td {
    text-align: right;
    padding: .45rem .65rem;
    border-bottom: 1px solid #f3f1ec;
    font-family: 'IBM Plex Mono', ui-monospace, monospace;
}
.amort-table td:first-child { text-align: left; color: #6b6760; }
.amort-table tr:nth-child(even) td { background: #fbfaf7; }

/* cache-buster: 2026-05-24T05:06:05Z */
