/* =====================================================
   DetailsModern.css
   Page-specific styles for details.aspx.
   Shared base styles (hero, chips, body) are in
   HeaderModern.css which is linked first.
   ===================================================== */

/* ===== HERO H1 OVERRIDE ===== */
/* details.aspx has a .hero-address line between h1 and
   the stat chips, so only 6px gap is needed under h1.
   HeaderModern.css defaults to 20px for pages that go
   straight from h1 to chips. */
.hero h1 {
    margin: 0 0 6px 0;
}

/* ===== DISCLAIMER ===== */
.disclaimer {
    font-size: 13px;
    color: #445571;
    line-height: 1.6;
    margin-bottom: 20px;
}

/* ===== GRID LAYOUT (side-by-side cards) ===== */
.grid-2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-bottom: 20px;
    align-items: stretch;
}

/* ===== STRUCT CHAR WRAPPER — passes grid height into the card inside ===== */
#structChar {
    display: flex;
    flex-direction: column;
}

#structChar .card {
    flex: 1;
}

/* ===== CARD BASE ===== */
.card {
    background: #ffffff;
    border: 1px solid #dde5f4;
    border-radius: 12px;
    overflow: hidden;
}

/* ===== HEADER COLORS ===== */
.card-header.blue {
    background: #edf3ff;
}

    .card-header.blue h2 {
        color: #0a4fa8;
    }

/* ===== ICON COLORS ===== */
.card-icon.blue {
    background: #1260cc;
    color: #ffffff;
    font-size: 16px;
}

/* ===== TEAL HEADER ===== */
.card-header.teal {
    background: #edfaf7;
}

    .card-header.teal h2 {
        color: #0a7c6e; /* WCAG 1.4.3: ~4.8:1 on #edfaf7 */
    }

/* ===== TEAL ICON ===== */
.card-icon.teal {
    background: #0d9989;
    color: #ffffff;
    font-size: 16px;
}

/* ===== ORANGE CARD ===== */
.card-header.orange {
    background: #fff7ed;
}

    .card-header.orange h2 {
        color: #994d00; /* WCAG 1.4.3: ~5.7:1 on #fff7ed */
    }

.card-icon.orange {
    background: #c05f00;
    color: #ffffff;
    font-size: 16px;
}

/* ===== GREEN CARD ===== */
.card-header.green {
    background: #f0fdf4;
}

    .card-header.green h2 {
        color: #15803d;
    }

.card-icon.green {
    background: #16a34a;
    font-size: 16px;
}

/* ===== NAVY CARD ===== */
.card-header.navy {
    background: #edf3ff;
}

    .card-header.navy h2 {
        color: #0d1f47;
    }

.card-icon.navy {
    background: #0d1f47;
    font-size: 16px;
}

/* ===== ASSESSED VALUES CARD — pin net-value-row to bottom ===== */
/* When the 2-column grid stretches this card taller than its content,
   flex column + flex:1 on the field-list pushes the footer row down.   */
.card--pinned-footer {
    display: flex;
    flex-direction: column;
}

.card--pinned-footer .field-list {
    flex: 1;
}

/* ===== NET VALUE ROW ===== */
.net-value-row {
    display: flex;
    justify-content: space-between;
    padding: 14px 20px;
    background: #f0fdf4;
    border-top: 1px solid #bbf7d0;
}

.net-value-label {
    font-size: 15px;
    font-weight: 600;
    color: #15803d;
}

.net-value-amount {
    font-size: 22px;
    font-weight: 700;
    color: #15803d;
}

/* ===== SUB-SECTION LABEL ===== */
.sub-section {
    padding: 8px 20px 6px;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    border-bottom: 1px solid #f0f3fa;
}

    /* ORANGE VARIANT */
    .sub-section.orange {
        color: #994d00; /* WCAG 1.4.3: ~5.7:1 on #fff7ed */
        background: #fff7ed;
    }

/* ===== HEADER STRUCTURE ===== */
.card-header {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 20px;
    border-bottom: 1px solid #edf1fa;
}

.card-header h2 {
    font-size: 17px;
    font-weight: 600;
    margin: 0;
}

/* ===== ICON BASE ===== */
.card-icon {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

/* ===== FIELD LIST ===== */
.field-list {
    margin: 0;
    padding: 0;
}

/* ===== ROWS ===== */
.field-row {
    display: flex;
    align-items: baseline;
    padding: 12px 20px;
    border-bottom: 1px solid #f0f3fa;
    gap: 12px;
}

    .field-row:last-child {
        border-bottom: none;
    }

/* ===== LABEL ===== */
.field-label {
    font-size: 13px;
    font-weight: 500;
    color: #445571;
    min-width: 185px;
    line-height: 1.5; /* WCAG 1.4.12 */
}

/* ===== VALUE ===== */
.field-value {
    font-size: 15px;
    color: #1a2438;
    font-weight: 500;
    line-height: 1.5; /* WCAG 1.4.12 */
}

    /* ===== LINKS ===== */
    .field-value a {
        color: #1260cc;
        text-decoration: underline;
    }

        .field-value a:hover {
            color: #0a4fa8;
        }

        /* RED LINK (Value Notice) */
        .field-value a.red {
            color: #b91c1c;
        }

            .field-value a.red:hover {
                color: #991b1b;
            }

/* ===== RESPONSIVE ===== */
@media (max-width: 768px) {
    .grid-2 {
        grid-template-columns: 1fr;
    }
}
