﻿body .page-content{
    font-size: 16px;
}
.project-detail-accordion .btn {
    text-decoration: none;
    padding-left: 0;
}

    .project-detail-accordion .btn:hover {
        color: var(--primary);
    }

    .project-detail-accordion .btn:before {
        color: var(--gray);
        content: "\f077";
        padding-right: 20px;
        font-weight: 400;
        font-family: var(--font-awesome-family);
    }

    .project-detail-accordion .btn.collapsed:before {
        color: var(--gray);
        content: "\f078";
        padding-right: 20px;
        font-weight: 400;
        font-family: var(--font-awesome-family);
    }
/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
input[type=number] {
    -moz-appearance: textfield;
}

.btn.btn-invite {
    font-size: 16px;
    padding-left: 35px;
    padding-right: 35px;
    box-shadow: none;
}

.alert-confirm-invite {
    line-height: 1;
    padding: 10px;
    padding-left: 12px;
    font-size: 16px;
    color: #000000;
    background: var(--secondary-lighter);
    border: 1px solid var(--secondary-light);
}
/* ── Meta strip (Causes / Location / Slots / Capacity) ─────── */
.review-meta-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    padding: 10px 20px;
    border-bottom: 1px solid var(--secondary-lighter);
}

.review-meta-item {
    display: flex;
    flex-direction: column;
    min-width: 110px;
    padding-right: 20px;
}

.review-meta-label {
    font-size: 13px;
    color: var(--gray);
    display: flex;
    align-items: center;
    gap: 4px;
    margin-bottom: 10px;
}

    .review-meta-label i {
        font-size: 13px;
    }

.review-meta-value {
    font-size: 16px;
    font-weight: 500;
    color: var(--black);
}

.page-content .project-detail-container .container-fluid, .project-detail-container, .project-detail-container.container-fluid {
    max-width: 1335px !important;
}

.card.session-card {
    margin-bottom: 10px;
    border-radius: 8px;
    font-size: 13px;
}

    .card.session-card:hover, .card.session-card:focus {
        background: #F9FAF3;
        border-color: #D9DFAE;
    }

.session-card-item {
    font-size: 13px;
    display: flex;
    align-items: center;
    gap: 5px;
}

.session-request-sent {
    background: #6BA71E0F;
    border-color: #6BA71E;
}
.text-accent {
    color: #6BA71E;
}
.bg-gray {
    background: #F5F5F6;
}
.progress{
    height: 6px;
    margin-block: 5px;
}
.card-registration-closed{
    margin-top: 20px;
}
.btns-sort{
    gap: 5px; overflow-x: auto; max-width: 100%;
}
    .btns-sort .btn-sort {
        outline: none;
        height: 32px;
        font-size: 12px;
        color: #000000;
        border-radius: 45px;
        padding-inline: 8px;
        padding-block: 0;
        background: var(--white);
        font-weight: normal;
        border: 1px solid var(--secondary-light);
        white-space: nowrap;
    }
    .btns-sort .btn-sort.active, .btns-sort .btn-sort:hover, .btns-sort .btn-sort:active {
        background: var(--primary-lighter);
        color: var(--primary);
        border: 1px solid var(--primary-light);
    }

.session-slot-card {
    cursor: pointer;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
    border: 1px solid #e0e0e0;
}

    .session-slot-card.session-slot-selected {
        box-shadow: 0 0 0 1px #9FB034;
        background-color: #f9faf3;
    }

.session-slot-disabled {
    opacity: 0.6;
    pointer-events: none;
}

.session-slot-readonly {
    pointer-events: none;
    cursor: default;
}

.bg-warning-light {
    background-color: #FFF9C4;
    border: 1px solid #FFEE58;
}
/* Fully booked - waiting list card */
.waiting-list-card {
    background-color: #FDF8E3;
    border: 1px solid #E8C547;
    border-radius: 12px;
}

.waiting-list-title {
    color: #C9A227;
    font-weight: 700;
    font-size: 16px;
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
}

    .waiting-list-title i {
        font-size: 18px;
        color: #E8C547;
    }

.waiting-list-text {
    color: #333;
    font-size: 14px;
    line-height: 1.5;
}

.btn-waiting-list {
    background-color: #E4E9CE;
    color: #6B8E23;
    border: none;
    border-radius: 8px;
    font-weight: 600;
    padding: 12px;
    margin-top: 12px;
}

    .btn-waiting-list:hover {
        background-color: #D8DFBA;
        color: #5c7a1e;
    }

.generic-session-slot {
    cursor: pointer;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
    border: 1px solid #e0e0e0;
}

    .generic-session-slot.session-slot-selected {
        border: 2px solid #9FB034;
        box-shadow: 0 0 0 1px #9FB034;
        background-color: #f9faf3;
    }

.review-meta-wrap-2 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal;
    word-break: break-word;
}

.equipment-value p {
    display: inline;
    margin: 0;
}