/* Capital Gains Calculator styles */
.calc-page .card { margin-top: 16px; }

.lede { color: #374151; font-size: 1.05rem; margin: 6px 0 10px; }

.form-grid { display: grid; grid-template-columns: 1fr; gap: 12px; }
.pair-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
@media (max-width: 700px) { .pair-grid { grid-template-columns: 1fr; } }

.triple-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }


.field label { display: block; font-weight: 600; margin-bottom: 6px; }
.field input, .field select { width: 100%; margin-bottom: 1px; }
.warn { color: #b91c1c; font-size: 0.9rem; margin-top: 1px; margin-bottom: 1px; min-height: 0; }
.hint { color: #6b7280; font-size: 0.85rem; margin-top: 4px; min-height: 0; }

.actions { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; margin-top: 12px; }
.small { font-size: 0.9rem; color: #6b7280; }

.results-table { display: grid; grid-template-columns: max-content max-content; justify-content: start; gap: 8px 14px; align-items: baseline; }
@media (max-width: 900px) { .results-table { grid-template-columns: 1fr auto; justify-content: stretch; } .results-table .v { text-align: right; } }
.results-table .k { color: #6b7280; font-size: 0.95rem; }
.results-table .v { font-weight: 700; font-size: 1.05rem; text-align: left; }
.results-table .v.strong { font-weight: 900; }
.rt-row { display: contents; }
.rt-sep { grid-column: 1 / -1; height: 1px; background: rgba(0,0,0,0.08); margin: 6px 0; }

.warnblock { margin-top: 10px; color: #7f1d1d; }

.text-block h2, .text-block h3 { margin-top: 0; }
.text-block ul { padding-left: 20px; margin: 8px 0; }

.field label {
    line-height: 1.25;
    white-space: normal;
}

.field input {
    min-width: 0;
}

@media (max-width: 640px) {
    .field label {
        font-size: 0.85rem;
    }
}