@font-face {
    font-family: 'Sao Chingcha';
    src: url('../assets/font/SaoChingcha-Bold-4.woff2') format('woff2'),
        url('../assets/font/SaoChingcha-Bold-4.otf') format('opentype');
    font-weight: 700;
    font-style: bold;
}

@font-face {
    font-family: 'Anuphan';
    src: url('../assets/font/Anuphan-Bold.woff2') format('woff2'),
        url('../assets/font/Anuphan-Bold.otf') format('opentype');
    font-weight: 700;
    font-style: bold;
}

@font-face {
    font-family: 'Anuphan';
    src: url('../assets/font/Anuphan-Regular.woff2') format('woff2'),
        url('../assets/font/Anuphan-Regular.otf') format('opentype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Anuphan';
    src: url('../assets/font/Anuphan-Medium.woff2') format('woff2'),
        url('../assets/font/Anuphan-Medium.otf') format('opentype');
    font-weight: 500;
    font-style: semibold;
}

body,
h3#budget,
tspan,
.container .hero p {
    font-family: 'Anuphan', sans-serif;
}

@media (min-width: 1400px) {

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl,
    .container-xxl {
        max-width: 860px;
    }
}

@media (min-width: 1200px) {

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl {
        max-width: 860px;
    }
}


h1,
h2,
h3,
.container.hero,
.sao {
    font-family: 'Sao Chingcha', sans-serif;
}

h1 {
    font-size: 60px;
}

h2 {
    font-size: 34px;
}

h3 {
    font-size: 28px;
}

h4 {
    font-size: 24px;
}

h5 {
    font-size: 20px;
}

main {
    margin-top: 72px;
}

.text-primary {
    color: #00744B !important;

}

.txt-main {
    font-size: 48px;
}

.text-secondary {
    color: #7A7A7A;
}

.navbar {
    background-color: white;
    box-shadow: 0px 4px 4px 0px #00000040;
    height: 60px;
    position: fixed;
    width: 100%;
    top: 0;
    z-index: 9999;
    --bs-navbar-padding-y: 0rem !important;
}

body {
    background-color: #E6F1ED;
}

a>p {
    color: #212529;
}

.btn-bottom {
    margin-top: auto;
}

.btn-outline-dark {
    background-color: white;
}

.btn-primary {
    background-color: #00744B;
    border-color: transparent;
}

.btn-primary:hover,
.btn-primary:active,
.btn-primary:focus {
    background-color: #005134 !important;
    border-color: transparent !important;
}

.card-grid {
    border: 3px;
    color: white;
}

.card-grid img {
    width: fit-content;
}

.navbar .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.wrap-navbar>div {
    background-color: #00744B;
    width: 131px;
    height: 60px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.navbar .container>.wrap-navbar img {
    max-width: 100%;
    max-height: 100%;
}

.navbar .container h5 {
    margin-left: 10px;
    margin-top: 8px;
}

footer {
    background-color: #003120;
}

footer .container {
    padding-top: 60px;
    padding-bottom: 60px;
}

footer h5 {
    color: white;
}

footer p,
footer a {
    color: #71A33D;
    margin-bottom: 16px;
}

footer .col-md-4 {
    margin-top: auto;
    margin-bottom: auto;
}

a:link {
    text-decoration: none;
}

a:visited {
    text-decoration: none;
}

a:hover {
    text-decoration: none;
}

a:active {
    text-decoration: none;
}

.capillary-main .container {
    align-items: end;
}

.modal-content {
    background-color: #267618;
    opacity: 95%;
    color: white;
}

.modal-capillary .modal-header {
    border-bottom: none;
}

.modal-capillary .modal-body {
    display: flex;
    flex-wrap: wrap;
    /* justify-content: space-between; */
}

.modal-capillary p {
    margin-bottom: 0px !important;
}

.modal-capillary a {
    width: 100%;
    display: contents;
}

.modal-capillary .modal-img-detail {
    height: 172px;
    border-radius: 10px;
    position: relative;
    display: inline-block;
    width: calc(33.33% - 20px);
    padding: 10px;
    margin: 5px;
    cursor: pointer;
    overflow: hidden;
}

.modal-capillary .modal-img-detail img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
}

.modal-capillary .modal-img-detail .fade-bg {
    width: calc(100% - 20px);
    height: 105px;
    background: linear-gradient(176.18deg, rgba(69, 214, 44, 0) 3.84%, #45D62C 69.46%);
    transition: transform 0.3s ease, fill 0.3s ease;
    position: absolute;
    top: 57px;
    z-index: 1;
    border-radius: 0px 0px 10px 10px;
}

.modal-capillary .modal-img-detail .fade-bg.traffy {
    background: linear-gradient(176.18deg, rgba(69, 214, 44, 0) 3.84%, #553923 69.46%);
}

.modal-capillary .modal-img-detail:hover .fade-bg {
    background: linear-gradient(176.18deg, rgba(69, 214, 44, 0) 3.84%, #4e4e4e 69.46%);

}

.modal-capillary .modal-img-detail p {
    width: calc(100% - 16px);
    position: absolute;
    color: white;
    z-index: 2;
    margin: 0;
    padding: 8px;
    bottom: 10px;
    max-height: 58px;
    overflow: hidden;
    text-overflow: ellipsis;
    /* white-space: nowrap; */
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

#project_name.overflow {
    max-height: 75px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.modal-dialog-scrollable .modal-body {
    max-height: 390px !important;
}

.container.cap-page {
    padding-top: 38px;
}

.icon-9d {
    width: 41.33px;
    height: 41.33px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: 8px;
    margin-bottom: 8px;
    border-radius: 8px;
}

.icon-9d>img {
    color: white;
    fill: white;
    width: 18px;
    height: 18px;
}

.enviroment .icon-9d,
#head-9d.enviroment,
.wrap-icon.enviroment {
    background-color: #8FA654;
}

.enviroment {
    color: #8FA654;
    border-color: #8FA654;
}

.safety .icon-9d,
#head-9d.safety,
.wrap-icon.safety {
    background-color: #45D62C;
}

.safety {
    color: #45D62C;
    border-color: #45D62C;
}

.transparent .icon-9d,
#head-9d.transparent,
.wrap-icon.transparent {
    background-color: #56D0E6;
}

.transparent {
    color: #56D0E6;
    border-color: #56D0E6;
}

.economic .icon-9d,
#head-9d.economic,
.wrap-icon.economic {
    background-color: #DDBCB0;
}

.economic {
    color: #DDBCB0;
    border-color: #DDBCB0;
}

.transport .icon-9d,
#head-9d.transport,
.wrap-icon.transport {
    background-color: #00369F;
}

.transport {
    color: #00369F;
    border-color: #00369F;
}

.health .icon-9d,
#head-9d.health,
.wrap-icon.health {
    background-color: #8AC4A4;
}

.health {
    color: #8AC4A4;
    border-color: #8AC4A4;
}

.social .icon-9d,
#head-9d.social,
.wrap-icon.social {
    background-color: #FFA301;
}

.social {
    color: #FFA301;
    border-color: #FFA301;
}

.learning .icon-9d,
#head-9d.learning,
.wrap-icon.learning {
    background-color: #001871;
}

.learning {
    color: #001871;
    border-color: #001871;
}

.management .icon-9d,
#head-9d.management,
.wrap-icon.management {
    background-color: #FF7F50
}

.management {
    color: #FF7F50;
    border-color: #FF7F50;
}

.head-tag,
.wrap-hashtag {
    display: flex;
    flex-flow: wrap;
}

.tag {
    background-color: white;
    border: 1px solid;
    padding: 8px 16px 8px 16px;
    margin-right: 8px;
    margin-bottom: 8px;
    border-radius: 8px;
    width: fit-content;
}

.hashtag {
    background-color: #B0D4C7;
    color: #333333;
    padding: 8px 16px 8px 16px;
    margin-right: 8px;
    margin-bottom: 8px;
    border-radius: 8px;
    width: fit-content;
}

.progress {
    background-color: white;
    height: 26px;
    border-radius: 0;
}

.progress-bar {
    /* background-color: #00744B; */
    background-color: #FFA301;
}

.bolder {
    font-weight: bolder !important;
}

/* .okr-date{
    margin-top: calc(24px + 0.5rem);
} */
.img_container {
    width: 100%;
    padding-top: 57.5%;
    /* 230 / 400 * 100% */
    position: relative;
    overflow: hidden;
}

.img_display {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transform: translate(-50%, -50%);
}

#map {
    height: 240px;
}

#map path {
    stroke-width: 10px;
    stroke: #00744B;
}

#Modal-9D .modal-content {
    opacity: 100%;
}

#Modal-9D .modal-body {
    background-color: white;
    color: #333333;
}

#Modal-9D .modal-body button {
    font-size: 12px;
    width: max-content;
}

#Modal-9D .modal-header {
    /* background-color: #45D62C; */
    opacity: 100%;
}

#Modal-9D .modal-header>.d-flex {
    align-items: center;
    color: white
}

#Modal-9D .modal-body .d-flex .wrap-icon {
    /* background-color: #45D62C; */
    border-radius: 8px;
    width: 45px;
    height: 45px;
}

#Modal-9D .modal-body .d-flex .wrap-icon>img {
    width: 28px;
    height: 28px;
    margin: 8px;

}

#Modal-9D .modal-header img {
    width: 46px;
    height: auto;
}

#Modal-9D .modal-header p {
    margin-bottom: 0;
}

#modalBodyContent-9d .d-flex p {
    font-weight: 500;
}

.svg-white {
    filter: brightness(0) invert(1);
}

#img-session img {
    width: 100%;
}

.pagination {
    display: inline-block;
}

.pagination a {
    float: left;
    padding: 8px 16px;
    text-decoration: none;
    color: #333333;
}

.pagination .active a {
    /* background-color: #E6F1ED; */
    background-color: #00744B !important;
    font-weight: bolder;
    border-radius: 5px;
    /* color: #333333; */
    color: white;
    border: none;
}

.pagination a:hover:not(.active) {
    background-color: #ddd;
    border-radius: 5px;
}

.pagination {
    display: flex;
    justify-content: center;
    gap: 10px;
    position: relative;
}

.pagination>a:first-child {
    position: absolute;
    left: 0;
}

.pagination>a:last-child {
    position: absolute;
    right: 0;
}

.wrap-status {
    display: flex;
}

.wrap-status p {
    font-size: 12px;
}

#svgObject {
    height: min-intrinsic;
}

.wrap-status img {
    width: 43px;
    height: 43px;
    margin-top: auto;
    margin-bottom: auto;
}

.head-result .card {
    display: flex;
    flex-flow: wrap;
    justify-content: space-between;
    margin-right: calc(var(--bs-gutter-x)* .5);
    margin-left: calc(var(--bs-gutter-x)* .5);
}

.head-result .card>.wrap-status {
    min-width: 160px;
}

.head-result .card>.wrap-status p,
.head-result .card>.wrap-status h5 {
    margin-bottom: 0;
}

.icon-status {
    position: absolute;
    top: 8;
    right: 8;
    width: 21px;
    height: 21px;
}

.wrap-result .img_container {
    position: relative;
}

.wrap-result h5.card-title {
    height: 46px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}


.tag.active {
    /* font-weight: bolder; */
    color: white;
    background-color: #434343;
    border: 1px solid #7A7A7A;
}

.return-result>* {
    margin-right: 8px !important;
}

/* #action_plan .multiselect-dropdown{
    padding: 8px !important;
} */
/* 
#tag_9d .tag{
    cursor: pointer;
} */
.card .img_container {
    border-radius: 5px 5px 0px 0px;
}

.pagination {
    display: flex;
    list-style-type: none;
    padding: 0;
}

.pagination li {
    margin-right: 5px;
}

.pagination li a {
    display: block;
    padding: 5px 10px;
    text-decoration: none;
    border: 1px solid #ccc;
    color: #333;
    background-color: #f9f9f9;
    border-radius: 3px;
}

.page-link:hover {
    color: #00744B;
}

.pagination li a,
.page-item.disabled,
.disabled>.page-link {
    background-color: transparent !important;
    border: none;
}

.pagination li a:hover {
    background-color: #e9e9e9;
}

.modal-dialog-scrollable {
    max-height: 60vh;
}

.unified-scroll {
    overflow-y: auto;
    max-height: calc(100vh - 200px);
    /* padding: 1rem; */
    /* padding-top: 0; */
}

.modal-section {
    margin-bottom: 2rem;
}

.section-header {
    position: -webkit-sticky;
    /* For Safari */
    position: sticky;
    top: -1.2rem;
    padding-top: 0;
    padding-bottom: 8px;
    background-color: #267618;
    z-index: 10;
    margin: 0;
}

#svgObject {
    display: initial;
}

#group_dist {
    display: none;
}

.rect_dist {
    background-color: #01744c;
    margin: 8px;
    height: 96px;
    width: 96px;
    /* Set the width equal to height */
    text-align: center;
    color: white;
    -webkit-text-fill-color: white;
    /* -webkit-text-stroke-width: 3px; */
    /* -webkit-text-stroke-color: black; */
    /* paint-order: stroke fill; */
    word-wrap: break-word;
    display: flex;
    align-items: center;
    justify-content: center;
    /* 
    text-shadow: -1px -1px 0 black,  
                1px -1px 0 black,
                -1px 1px 0 black,
                1px 1px 0 black; */

    paint-order: stroke fill;
}

.rect_dist:hover {
    background-color: #4e4e4e;
}

.rect_dist p {
    margin: 0;
    padding: auto;
}

.img_traffy .img_container {
    width: 100%;
    padding-top: 150%;
    position: relative;
    overflow: hidden;
}

.img_traffy .img_header {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 1;
    background-color: rgba(255, 255, 255, 0.7);
    border-radius: 8px;
    padding: 5px;
    margin: 0;
}

.img_traffy .img_display {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transform: translate(-50%, -50%);
}

#wrap-json .row>.col-md-6:first-child {
    padding-right: 36px;
}

#wrap-json .row>.img_traffy>.col-md-6:first-child {
    padding-right: inherit;
}

.btn-navigate {
    display: none;
}

.btn-outline.bg-white:hover {
    background-color: #00000040 !important;
}

.data_tabs .nav-tabs .nav-link {
    border: 1px solid #00744B !important;
    /* border-bottom: none; */
    color: #00744B !important;

}

.data_tabs .nav-tabs {
    border-bottom: 1px solid #00744B !important;
}

.data_tabs .nav-link.active {
    color: white !important;
    background-color: #00744B;
    font-weight: 700;
}

.data_tabs .tab-content {
    /* background-color: white; */
    border: 1px solid #00744B !important;
}

.data_tabs .table>:not(caption)>*>* {
    background-color: transparent;
}

.data_tabs .table th {
    /* background-color: white; */
    color: #00744B;
}

/* .data_tabs .table {
    border-color: white;
    color: #00744B; 
} */

/* .data_tabs  .tabulator .tabulator-header .tabulator-col .tabulator-col-content .tabulator-col-title{
	white-space: normal;
	text-overflow: clip;
} */

.data_tabs .tabulator .tabulator-col-content {
    white-space: normal;
    text-overflow: clip;
}

.card.adv-search-project .form-group {
    margin-bottom: 0.5em;
}
.wrap-table-project{
    overflow-x: auto;
    white-space: nowrap; 
}


.wrap-table-project .table {
    background-color: transparent;
}

.wrap-table-project .table thead th,
.wrap-table-project .table tbody td {
    background-color: transparent;
}
.wrap-table-project .td_detail_project{
    background-color: #f6f6f6 !important;
}

.bangkok_egp_link,
.bangkok_egp_link p {
    color: #00744B;
    text-decoration-line: underline;
}

.text-small {
    font-size: 0.8em;
}

.wrap-table-project .table thead {
    border-bottom: 2px solid #00744B;
}

.display_3line {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal;
}

.progress-segment.progress-bar {
    display: flex;
    flex-flow: row;
    width: 100%;
    height: 26px;
    overflow: hidden;
    background-color: transparent;
}

.progress-segment .segment {
    flex: 1;
    background-color: white;
    margin-right: 2px;
    border: 1px solid black;
}

.progress-segment .segment:last-child {
    margin-right: 0;
}

.progress-segment .segment.filled {
    background-color: #FFA301;
}




.segment.filled.green {
    background-color: #00744B;
}

.segment.filled.grey {
    background-color: #ccc;
}

.progress-bar.green {
    background-color: #00744B;
}

.summary_search.card {
    border: 2px solid #00744B;
    background-color: #f6f6f6;
}


.timeline {
    list-style: none;
    padding: 0;
    position: relative;
    text-align: left;
}

.timeline::before {
    content: '';
    position: absolute;
    left: 20px;
    top: 0;
    bottom: 0;
    width: 2px;
    background: #7A7A7A;
}

.timeline li {
    position: relative;
    margin-bottom: 20px;
    padding-left: 40px;
}

.timeline li::before {
    content: '';
    position: absolute;
    left: 17px;
    top: 6px;
    width: 8px;
    height: 8px;
    background: #00744B;
    border-radius: 50%;
    box-shadow: 0 0 0 4px #fff;
}

.timeline li h5,
.detail_timeline h5 {
    margin: 0;
    font-size: 16px;
    font-weight: bold;
}

.timeline li p,
.detail_timeline p {
    margin: 0;
    font-size: 14px;
    color: #666;
}

.detail_timeline>div {
    text-align: left;
    margin-bottom: 16px;
}
.desc_detail{
    display: flex;
}
.desc_detail{
    justify-content: space-between;
    text-align: left;
}
.desc_detail > div>div{
    display: flex;
    justify-content: flex-start;
}
.desc_detail .segment{
    max-width: 16px;
}
.wrap-adv-search{
    display: flex;
    justify-content: space-between;
}

.notify-btn{
    height: 40px;
    margin-top: 1.5rem !important;
}

@media (max-width: 991px) {
    .modal-capillary a .modal-img-detail {
        width: 45%;
    }
}

@media (max-width: 768px) {
    #svgObject {
        display: none;
    }

    #group_dist {
        display: block;
    }

    #wrap-json .row>.col-md-6:first-child {
        padding-right: inherit;
    }

    .btn-navigate {
        display: block;
        width: 48px;
        height: 48px;
        background-color: white;
        border-radius: 40px;
        padding: 8px;
        box-shadow: 0px 4px 4px 0px #00000040;
        z-index: 9999;
        position: fixed;
        bottom: 24px;
        right: 24px;
    }

    .btn-navigate object,
    .btn-navigate img {
        width: 100%;
        height: 100%;
    }

    #wrap-group-dist {
        transition: padding-top 0.3s ease;
    }
}

@media (max-width: 550px) {
    .modal-capillary a .modal-img-detail {
        width: 100%;
    }

    .navbar h5 {
        display: none;
    }
    .wrap_sum_project .d-flex.justify-content-between{
        display: block !important;

    }
    .wrap_sum_project .d-flex.justify-content-between > div{
        display: block !important;
        align-items: baseline;
    }
    .wrap_sum_project .d-flex.justify-content-between > div > h4{
        margin-left: 8px;
        margin-right: 8px;
    }
    .wrap_sum_project .border-start{
        border-left: none !important;
        /* padding-left: 0px !important; */
        padding-right: calc(var(--bs-gutter-x)* .5)!important;;
        padding-left: calc(var(--bs-gutter-x)* .5)!important;;
    }
    .desc_detail{
        display: block;
    }
    .desc_detail > div{
        margin-bottom: 8px;
    }
    .wrap-table-project th:nth-child(3){
        min-width: 220px;
    }
    .wrap-page-session{
        justify-content: center !important;
    }
    .wrap-page-session > div{
        display: none;
    }
    .wrap-page-session > nav{
        margin-top: 8px;
    }

}

.container .hero p {
    text-wrap: balance;
}

.header-single-line {
    white-space: nowrap;
    /* Prevents text from wrapping to the next line */
}

.pagination {
    gap: 0;
}

h1.header-single-line {
    font-size: 80px !important;
}

.adv-search-project .form-control {
    border: solid 1px #ced4da;
    background-color: white;
    height: 48px;
}

.adv-search-project input.form-control::placeholder {
    color: #bdbdbd;
}

.wrap-table-project th:nth-child(2),
.wrap-table-project th:nth-child(5),
.wrap-table-project td:nth-child(2),
.wrap-table-project td:nth-child(5) {
    text-align: center;
}

/* .circle_badge{
    border-radius: 20px;
    
} */
@media (max-width: 1200px) {
    h1.header-single-line {
        font-size: 80px !important;
    }
}

@media (max-width: 992px) {
    h1.header-single-line {
        font-size: 80px !important;
    }
}

@media (max-width: 768px) {
    h1.header-single-line {
        font-size: 56px !important;
    }

}

@media (max-width: 480px) {
    h1.header-single-line {
        font-size: 40px !important;
    }

    .container {
        padding-left: 24px !important;
        padding-right: 24px !important;
    }
}

@media (max-width: 576px) {
    .page-item {
        display: none;
    }

    .page-item.show-mobile {
        display: inline;
    }

    .container {
        padding-left: 24px !important;
        padding-right: 24px !important;
    }
}