﻿.HomeSignInButton {
    height: 24rem;
    padding: 4rem;
    width: 100%;
}

    .HomeSignInButton:hover {
        padding: 4rem;
    }



.check-in-icon {
    padding-top: 1rem;
    display: block;
    font-size: 5rem !important;
}



.criteriapoints {
    font-style: italic;

}

.PrescreeningQuestions > li::marker {
    font-weight: bold;
}

.GuidelineQuestions > li::marker {
    font-weight: bold;
}


.editBtn {
    display: initial;
    line-height: 3;
    padding-top: .4rem;
    padding-bottom: .4rem;
}





.step-header {
    border-bottom: 1px solid #ccc;
    margin-bottom: 20px;
}

.step-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: space-between;
}

.step-item {
    flex: 1;
    text-align: center;
    font-size: 14px;
    border-bottom: 4px solid transparent;
    transition: border-color 0.2s ease-in-out, background-color 0.2s ease-in-out;
}

    .step-item a,
    .step-item span {
        display: block;
        color: #212121;
        text-decoration: none;
        padding: 8px 0;
        height: 100%;
    }

        .step-item a:hover {
            color: #000;
            background-color: #f0f0f0;
        }

/* State-based bottom border colors */
.step-complete {
    border-bottom-color: #007E33; /* green */
}

    .step-complete a:hover {
        border-bottom-color: #006626;
    }

.step-problem {
    border-bottom-color: #B22222; /* red */
}

    .step-problem a:hover {
        border-bottom-color: #8B1A1A;
    }

.step-unlocked {
    border-bottom-color: #005A9E; /* blue */
}

    .step-unlocked a:hover {
        border-bottom-color: #004B85;
    }

.step-locked {
    border-bottom-color: #6c6c6c; /* dark gray for contrast */
}

    .step-locked span {
        color: #555;
        cursor: not-allowed;
    }

    .step-locked:hover {
        background-color: transparent;
    }

/* Current step enhancement */
.step-current {
    border-bottom-width: 5px;
}

    .step-current a,
    .step-current span {
        font-weight: bold;
    }


/* ── FAQ Accordion ────────────────────────────────────── */

.faq-accordion .accordion-item {
    background-color: #fff;
    border: 1px solid #dee2e6;
    margin-bottom: 0;
}

    .faq-accordion .accordion-item:first-of-type {
        border-top-left-radius: 6px;
        border-top-right-radius: 6px;
    }

    .faq-accordion .accordion-item:last-of-type {
        border-bottom-left-radius: 6px;
        border-bottom-right-radius: 6px;
    }

    .faq-accordion .accordion-item + .accordion-item {
        border-top: 0;
    }

.faq-accordion .accordion-header {
    margin: 0;
}

.faq-accordion .accordion-button {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    padding: 14px 18px;
    font-size: 15px;
    font-weight: 600;
    color: #212529;
    text-align: left;
    background-color: #fff;
    border: 0;
    overflow-anchor: none;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out;
    cursor: pointer;
}

    .faq-accordion .accordion-button:hover {
        background-color: #f1f5f9;
    }

    .faq-accordion .accordion-button:focus {
        outline: 0;
        box-shadow: 0 0 0 2px rgba(0, 90, 158, 0.25);
        z-index: 3;
    }

    .faq-accordion .accordion-button::after {
        content: '';
        flex-shrink: 0;
        width: 18px;
        height: 18px;
        margin-left: auto;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23555'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3E%3C/svg%3E");
        background-repeat: no-repeat;
        background-size: 18px;
        transition: transform 0.2s ease-in-out;
    }

    .faq-accordion .accordion-button:not(.collapsed) {
        color: #005A9E;
        background-color: #e8f0fe;
    }

        .faq-accordion .accordion-button:not(.collapsed)::after {
            transform: rotate(-180deg);
        }

.faq-accordion .accordion-collapse {
    border-top: 1px solid #dee2e6;
}

.faq-accordion .accordion-body {
    padding: 16px 18px;
    font-size: 14px;
    line-height: 1.7;
    color: #333;
}

    .faq-accordion .accordion-body ol,
    .faq-accordion .accordion-body ul {
        padding-left: 20px;
    }

    .faq-accordion .accordion-body li + li {
        margin-top: 6px;
    }

/* FAQ question number badge */
.faq-num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    margin-right: 10px;
    font-size: 13px;
    font-weight: 700;
    color: #fff;
    background-color: #005A9E;
    border-radius: 50%;
    flex-shrink: 0;
}

.faq-accordion .accordion-button:not(.collapsed) .faq-num {
    background-color: #003f6e;
}

/* FAQ contact card */
.faq-contact {
    background-color: #e8f0fe;
    border-left: 4px solid #005A9E;
    border-radius: 4px;
    padding: 16px 20px;
    font-size: 14px;
    line-height: 1.7;
}

    .faq-contact a {
        font-weight: 600;
    }