/* RECATOOLS — Debt Snowball vs Avalanche Calculator */
.debt-list-header,
.debt-row {
    display: grid;
    grid-template-columns: 1.4fr 1fr 0.8fr 1fr 28px;
    gap: .5rem;
    align-items: center;
    margin-bottom: .4rem;
}
.debt-list-header {
    font-size: .68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: #6b6760;
    margin-bottom: .25rem;
    padding: 0 .25rem;
}
@media (max-width: 700px) {
    .debt-list-header { display: none; }
    .debt-row {
        grid-template-columns: 1fr 1fr 28px;
        background: #fafaf9;
        border: 1px solid #ebebeb;
        border-radius: 8px;
        padding: .5rem;
        margin-bottom: .5rem;
    }
    .debt-row .debt-name { grid-column: 1 / span 3; }
}

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

.remove-debt-btn {
    background: #fff;
    border: 1px solid #ebebeb;
    color: #ef4444;
    border-radius: 6px;
    width: 28px;
    height: 28px;
    font-size: 1rem;
    cursor: pointer;
    font-weight: 700;
    line-height: 1;
}
.remove-debt-btn:hover { background: #fef2f2; border-color: #ef4444; }

#add-debt-btn {
    margin: .5rem 0 1rem;
    padding: .4rem .9rem;
    background: #fff;
    color: #6b6760;
    border: 1px dashed #d6d3ce;
    border-radius: 6px;
    font-size: .8rem;
    font-weight: 600;
    cursor: pointer;
    font-family: inherit;
}
#add-debt-btn:hover { background: #fafaf9; border-color: #6b6760; }

.extra-row {
    margin: 1rem 0;
    padding: .875rem 1rem;
    background: #f8fafc;
    border-left: 3px solid #3b82f6;
    border-radius: 0 8px 8px 0;
}
.extra-row label {
    display: block;
    font-size: .8rem;
    font-weight: 600;
    color: #1a1814;
    margin-bottom: .25rem;
}
.extra-row .ext-help {
    font-size: .72rem;
    color: #475569;
    margin-bottom: .4rem;
}
.extra-row .input-prefix-wrap {
    display: inline-flex;
    border: 1px solid #ebebeb;
    border-radius: 6px;
    background: #fff;
    overflow: hidden;
    max-width: 200px;
}
.extra-row .ipx-label { padding: .4rem .55rem; background: #f0ede9; font-size: .8rem; font-weight: 600; color: #6b6760; border-right: 1px solid #ebebeb; }
.extra-row input[type="number"] {
    flex: 1; border: none; padding: .4rem .55rem;
    font-size: .9rem; font-family: inherit; background: transparent;
    color: #1a1814; width: 100%; box-sizing: border-box;
}
.extra-row input:focus { outline: none; box-shadow: inset 0 0 0 2px #E8472F; }

.calc-btn {
    width: 100%; margin: 1rem 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; }

.strategy-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .75rem;
    margin: 1rem 0;
}
@media (max-width: 700px) { .strategy-grid { grid-template-columns: 1fr; } }

.strategy-card {
    background: #fafaf9;
    border: 1px solid #ebebeb;
    border-radius: 10px;
    padding: 1rem;
}
.strategy-card h3 {
    margin: 0 0 .5rem;
    font-size: .9rem;
    font-weight: 700;
    color: #1a1814;
}
.strategy-card .strategy-sub {
    font-size: .72rem;
    color: #475569;
    margin: 0 0 .75rem;
}
.strategy-card .sg-row {
    display: flex;
    justify-content: space-between;
    padding: .3rem 0;
    border-bottom: 1px dashed #ebebeb;
    font-size: .85rem;
}
.strategy-card .sg-row:last-of-type { border-bottom: none; }
.strategy-card .sg-label { color: #6b6760; }
.strategy-card .sg-value { font-weight: 700; color: #1a1814; }
.strategy-card .order-label {
    font-size: .68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: #6b6760;
    margin-top: .5rem;
    margin-bottom: .25rem;
}
.strategy-winner {
    margin: 1rem 0;
    padding: .875rem 1rem;
    background: #f0fdf4;
    border-left: 3px solid #16a34a;
    border-radius: 0 8px 8px 0;
    font-size: .9rem;
    line-height: 1.55;
    color: #1a1814;
}
.strategy-winner:empty { display: none; }

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