/* =============================================
   NET WORTH CALCULATOR — net-worth.css
   Tool-specific styles only.
   Common styles are in tool.css
   ============================================= */

.nw-calc { width: 100%; }

.nw-section-label {
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--teal);
    padding-bottom: 6px;
    border-bottom: 2px solid var(--teal);
    margin: 4px 0 6px;
}
.nw-section-label-liab {
    margin-top: 18px;
    color: #dc2626;
    border-bottom-color: #dc2626;
}

.tool-input-wrap { position: relative; }
.nw-currency-symbol {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--muted);
    font-size: 15px;
    font-weight: 600;
    pointer-events: none;
}
.tool-input-wrap input.has-prefix { padding-left: 30px; }

.nw-calc .mort-layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    align-items: start;
}

.nw-results {
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    overflow: hidden;
    width: 100%;
    position: sticky;
    top: 16px;
}
.nw-result-header {
    background: #1d4ed8;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    padding: 10px 16px;
}
.nw-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
}
.nw-table td {
    padding: 10px 16px;
    border-bottom: 1px solid var(--border);
    color: var(--text2);
}
.nw-table tr:nth-child(even) { background: #eff6ff; }
.nw-table td:last-child {
    text-align: right;
    font-weight: 600;
}
.nw-positive { color: #16a34a !important; }
.nw-negative { color: #dc2626 !important; }
.nw-total-row td {
    background: var(--light) !important;
    font-weight: 700;
    border-bottom: none;
    font-size: 16px;
}
.nw-total-row .nw-worth-positive { color: #16a34a !important; }
.nw-total-row .nw-worth-negative { color: #dc2626 !important; }

#nwChart {
    display: block;
    margin: 16px auto;
    max-width: 220px;
    height: auto;
}

@media (max-width: 768px) {
    .nw-calc .mort-layout {
        grid-template-columns: 1fr;
    }
    .nw-results { position: static; }
}
