/* =========================================================
   HAVEN HOMEPAGE INCIDENT REPORTING v0.1

   Scope:
   - homepage only
   - incident digest only
   - no global navigation changes
   - no Personnel File changes
   ========================================================= */


.incident-report-section {
    position: relative;
}


.incident-briefing {
    margin-bottom: 18px;
    padding: 22px 24px;

    border:
        1px solid rgba(209, 104, 42, .42);

    background:
        linear-gradient(
            105deg,
            rgba(209, 104, 42, .095),
            rgba(16, 21, 26, .97) 34%,
            rgba(10, 14, 18, .98)
        );

    box-shadow:
        0 16px 38px rgba(0, 0, 0, .20);
}


.incident-briefing p {
    max-width: 1080px;
    margin:
        12px 0 0;

    color:
        var(--haven-text-soft);

    font-size:
        .96rem;

    line-height:
        1.75;
}


.incident-grid {
    display: grid;

    grid-template-columns:
        repeat(
            4,
            minmax(0, 1fr)
        );

    gap:
        14px;
}


.incident-card {
    min-width: 0;
    min-height: 188px;
    padding: 19px;

    position: relative;
    overflow: hidden;

    display: flex;
    flex-direction: column;

    border:
        1px solid var(--haven-line);

    background:
        linear-gradient(
            145deg,
            rgba(21, 27, 33, .985),
            rgba(10, 14, 17, .985)
        );

    box-shadow:
        0 14px 32px rgba(0, 0, 0, .18);
}


.incident-card::before {
    content: "";

    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 3px;

    background:
        var(--haven-accent);
}


.incident-label {
    color:
        var(--haven-accent);

    font-family:
        var(--haven-mono);

    font-size:
        .66rem;

    font-weight:
        700;

    letter-spacing:
        .105em;

    text-transform:
        uppercase;
}


.incident-value {
    margin-top:
        10px;

    overflow-wrap:
        anywhere;

    color:
        var(--haven-text);

    font-size:
        clamp(
            1.05rem,
            2vw,
            1.38rem
        );

    font-weight:
        800;

    line-height:
        1.22;
}


.incident-value a {
    color:
        inherit;

    text-decoration:
        none;
}


.incident-value a:hover,
.incident-value a:focus-visible {
    color:
        var(--haven-accent);
}


.incident-detail {
    margin-top:
        8px;

    color:
        var(--haven-muted);

    font-family:
        var(--haven-mono);

    font-size:
        .71rem;

    line-height:
        1.5;
}


.incident-commentary {
    margin:
        auto 0 0;

    padding-top:
        14px;

    border-top:
        1px solid var(--haven-line);

    color:
        var(--haven-text-soft);

    font-size:
        .82rem;

    line-height:
        1.55;
}


.incident-window-note {
    margin-top:
        14px;

    color:
        var(--haven-muted);

    font-family:
        var(--haven-mono);

    font-size:
        .66rem;

    line-height:
        1.55;
}


@media (max-width: 1120px) {

    .incident-grid {
        grid-template-columns:
            repeat(
                3,
                minmax(0, 1fr)
            );
    }

}


@media (max-width: 900px) {

    .incident-grid {
        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );
    }

}


@media (max-width: 650px) {

    .incident-grid {
        grid-template-columns:
            1fr;
    }

    .incident-card {
        min-height:
            auto;
    }

}
