@charset "UTF-8";

.exhi-items-zone:last-child:after {
    border-right: none !important;
}

div.exhi-items-labels span:hover {
    transition: scale 0.3s ease-in-out;
    scale: 1.3;
}

.text-outeline-white {
    text-shadow: -1px -1px 0 #fff, 1px -1px 0 #fff, -1px 1px 0 #fff, 1px 1px 0 #fff;
}

.svg-outline-white {
    color: #000; /* Changes the 'currentColor' fill to black */
    filter: drop-shadow(-1px -1px 0 #fff) drop-shadow(1px -1px 0 #fff) drop-shadow(-1px 1px 0 #fff) drop-shadow(1px 1px 0 #fff);
}

.btn-default.disabled {
    color: black !important;
    background-color: silver;
}

.timetable-page .position-schedule-all {
    position: absolute !important;
}

@media (max-width: 768px) {
    .exhiList-page .keyword-search.keyword-search-result {
        top: 6.5rem;
    }

    .timetable-page .keyword-search.keyword-search-result {
        top: 6.5rem;
    }

    .timetable-page .position-schedule-all {
        position: initial !important;
    }
}

@media (min-width: 1400px) {

    .timetable-page .keyword-search {
        width: 50%;
    }
}

@media (max-width: 992px) {
    .timetable-page .keyword-search {
        width: 100% !important;
    }
}

@media (min-width: 768px) {
    .timetable-page .keyword-search {
        float: right !important;
    }
}


.eSelection {
    border: 1px dotted silver;
    padding: 10px 20px 8px 20px;
    margin-bottom: 20px;
}

    .eSelection span.eIcon {
        margin-bottom: 3px;
        color: silver;
        cursor: pointer;
        display: inline-block;
    }

        .eSelection span.eIcon.selected {
            font-weight: bold;
            font-size: 17px;
            color: black;
        }

.cat_icon {
    width: 24px;
    display: inline-block;
    text-align: center;
    border: none;
}

.eSelection span.eIcon .cat_icon {
    background: url(../images/common/plus_icon.jpg) no-repeat;
    background-size: 16px 16px;
}

.eSelection span.eIcon.selected .cat_icon {
    background: url(../images/common/min_icon.jpg) no-repeat;
    background-size: 16px 16px;
}

.categoryDiv {
    padding: 10px 20px 10px 20px;
    border: 1px dotted silver;
    display: none;
}

    .categoryDiv.selected {
        display: block;
    }

.cate-label-list span {
    margin: 0.15rem !important;
}

.pagination li a {
    background-color: #f2f0f0;
    margin-left: 0.3rem;
    margin-right: 0.3rem;
}

.pagination li:hover {
    transition: scale 0.3s ease-in-out;
    scale: 1.3;
}

.resultNoData {
    border: 1px solid #395ca2;
    padding: 25px;
    float: none;
    margin-top: 20px;
    background-color: #d9edf7;
}

.bannerFrame {
    max-width: 250px;
    max-height: 100px;
}

.scroll1, .scroll2 {
    scrollbar-color: #2371ed #d3e3fb;
    scrollbar-width: auto;
}

.scroll1 {
    margin-bottom: 1rem;
    height: 24px;
    overflow-x: auto;
}

    .scroll1 div {
        height: 24px;
        margin: 0 1%;
    }

@supports (-webkit-appearance: none) and (not (overflow: -webkit-marquee)) and (not (-ms-ime-align: auto)) and (not (-moz-appearance: none)) {
    .scroll1 div {
        height: 1px !important;
    }
}

.scroll1::-webkit-scrollbar,
.scroll2::-webkit-scrollbar {
    width: 24px;
    height: 24px;
}

.scroll1::-webkit-scrollbar-thumb,
.scroll2::-webkit-scrollbar-thumb {
    background: #2371ed;
    border-radius: 0px;
}

    .scroll1::-webkit-scrollbar-thumb:hover,
    .scroll2::-webkit-scrollbar-thumb:hover {
        background: #135bcd;
    }

.scroll1::-webkit-scrollbar-track,
.scroll2::-webkit-scrollbar-track {
    background: #d3e3fb;
    border-radius: 0px;
}

.scroll1::-webkit-scrollbar-button,
.scroll2::-webkit-scrollbar-button {
    background-color: #a7c6f8;
    background-size: 12px 12px;
    background-repeat: no-repeat;
    background-position: center center;
    height: 24px;
    width: 1.5em;
    cursor: pointer;
}

    .scroll1::-webkit-scrollbar-button:end:increment,
    .scroll2::-webkit-scrollbar-button:end:increment {
        background-image: url("data:image/svg+xml,<svg width='1em' height='1em' viewBox='0 0 16 16' class='bi bi-caret-right-fill' fill='currentColor' xmlns='http://www.w3.org/2000/svg'><path fill-rule='evenodd' d='m12.14 8.753-5.482 4.796c-.646.566-1.658.106-1.658-.753V3.204a1 1 0 0 1 1.659-.753l5.48 4.796a1 1 0 0 1 0 1.506z'/></svg>");
    }

    .scroll1::-webkit-scrollbar-button:start:decrement,
    .scroll2::-webkit-scrollbar-button:start:decrement {
        background-image: url("data:image/svg+xml,<svg width='1em' height='1em' viewBox='0 0 16 16' class='bi bi-caret-left-fill' fill='currentColor' xmlns='http://www.w3.org/2000/svg'><path fill-rule='evenodd' d='m3.86 8.753 5.482 4.796c.646.566 1.658.106 1.658-.753V3.204a1 1 0 0 0-1.659-.753l-5.48 4.796a1 1 0 0 0 0 1.506z'/></svg>");
    }

@media (min-width: 980px) {
    .timetb-area .scroll2 > .d-flex, .timetb-area .scroll2 > .search-sem-result-datevenue, .timetb-area .scroll2 > .offcanvas_sideTab, .timetb-area .scroll2 > .msgboxList-dateCol, .timetb-area .scroll2 > .msgboxList-readCol, .timetb-area .scroll2 > .pagination-area, .timetb-area .exhi-details-accordion .scroll2 > .accordion-button, .exhi-details-accordion .timetb-area .scroll2 > .accordion-button, .timetb-area .search-noResult ul .scroll2 > li, .search-noResult ul .timetb-area .scroll2 > li, .timetb-area .scroll2 > .exhi-items-labels, .timetb-area .scroll2 > .label-remarks, .timetb-area .scroll2 > .exhi-items-fav-row, .timetb-area .exhi-items-products .scroll2 > .card-body, .exhi-items-products .timetb-area .scroll2 > .card-body, .timetb-area .exhi-items-products .scroll2 > .prod-search-card-body, .exhi-items-products .timetb-area .scroll2 > .prod-search-card-body, .timetb-area .scroll2 > .exhi-items, .timetb-area .scroll2 > .product-category-txt, .timetb-area .search-area-offcanvas-advbtn .scroll2 > .filter-cirNum, .search-area-offcanvas-advbtn .timetb-area .scroll2 > .filter-cirNum, .timetb-area .scroll2 > .search-area-offcanvas-inputCol, .timetb-area .scroll2 > .search-area-offcanvas, .timetb-area .scroll2 > .head-icons, .timetb-area .scroll2 > .head-icons-btn, .timetb-area .scroll2 > .btn-login, .timetb-area .scroll2 > .btn-newReg, .timetb-area .scroll2 > .btn-numcir, .timetb-area .scroll2 > .head-name-icons-row, .timetb-area .head-icons-col .scroll2 > ul, .head-icons-col .timetb-area .scroll2 > ul, .timetb-area .scroll2 > .prod-card, .timetb-area .scroll2 > .prod-img-container, .timetb-area .scroll2 > .prod-search-card-footer, .timetb-area .scroll2 > .meta-info, .timetb-area .login-plain .scroll2 > .welcome-ttl, .login-plain .timetb-area .scroll2 > .welcome-ttl, .timetb-area .top-content section.top-buttons .msgbox-entry .scroll2 > .msgbox-nums, .top-content section.top-buttons .msgbox-entry .timetb-area .scroll2 > .msgbox-nums, .timetb-area .cate-content .scroll2 > label, .cate-content .timetb-area .scroll2 > label, .timetb-area .scroll2 > .timetb-date, .timetb-area .scroll2 > .timetable-remarks, .timetb-area .scroll2 > .timetb-venue, .timetb-area .timetb-venue .scroll2 > li, .timetb-venue .timetb-area .scroll2 > li, .timetb-area .scroll2 > .timetb-inner, .timetb-area section .scroll2 > .session-time, section .timetb-area .scroll2 > .session-time, .timetb-area .scroll2 > .tag-spec, .timetb-area .scroll2 > .btn-sem-apply, .timetb-area .scroll2 > .btn-sem-apply-s, .timetb-area .scroll2 > .timetable-applied-notice {
        position: relative !important;
        width: fit-content !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

@media (min-width: 1600px) {
    .timetable-page .keyword-search input {
        width: 75% !important;
    }
}


.eSelection {
    border: 1px dotted silver;
    padding: 10px 20px 8px 20px;
    margin-bottom: 20px;
}

    .eSelection span.eIcon {
        margin-bottom: 3px;
        color: silver;
        cursor: pointer;
        display: inline-block;
    }

        .eSelection span.eIcon.selected {
            font-weight: bold;
            font-size: 17px;
            color: black;
        }

.cat_icon {
    width: 24px;
    display: inline-block;
    text-align: center;
    border: none;
}

.eSelection span.eIcon .cat_icon {
    background: url(../images/common/plus_icon.jpg) no-repeat;
    background-size: 16px 16px;
}

.eSelection span.eIcon.selected .cat_icon {
    background: url(../images/common/min_icon.jpg) no-repeat;
    background-size: 16px 16px;
}

.categoryDiv {
    padding: 10px 20px 10px 20px;
    border: 1px dotted silver;
    display: none;
}

    .categoryDiv.selected {
        display: block;
    }

.cate-label-list span {
    margin: 0.15rem !important;
}

.categoryInApplication .eSelection {
    border: none;
    border-bottom: 2px solid silver;
    border-bottom-style: dotted;
    padding-left: 5px;
}

.password-area {
    background: none;
}

.pw-agreement {
    padding-left: 1.5rem !important;
}

.login-id, .login-pw {
    position: relative !important;
}

    .login-id input, .login-pw input, .login-email input {
        padding-left: 2.2rem;
    }

.password-row > * {
    max-width: 100%;
    flex: 0 0 auto;
    width: 100%;
}

@media (min-width: 992px) {
    .password-row > * {
        flex: 0 0 auto;
        width: 50%;
    }
}

.pw-agreement {
    max-height: 620px;
}




/* Allow slides to fit the image width tightly */
.swiper-container .swiper-slide {
    width: auto !important;
}

/* Center the slides inside the swiper wrapper */
.swiper-container .swiper-wrapper {
    justify-content: center;
}

/* Ensure images don't overflow */
.swiper-container .swiper-slide img {
    display: block;
    height: auto;
}

.bkmarkedTop .icon-fav-txt {
    background-color: #ff9e44 !important;
}

.btn-fav:before {
    font-family: "Font Awesome 6 Pro";
    content: "\f005";
}

.btn-product-pdf {
    border-color: #F07E13 !important;
    background-color: #F07E13 !important;
    font-size: large;
    font-weight: bold;
    /*padding-top: 0.75rem !important;
    padding-bottom: 0.75rem !important;
    padding-right: 2rem !important;
    padding-left: 2rem !important;*/
}

.btn-lang {
    font-size: 1rem;
    padding: 0.25rem 0.5rem !important;
}

.login-remarks {
    background-color: red;
    color: white;
    width: 80%;
    padding: 10px 20px;
    text-align: center;
    margin-bottom: 10px;
}

.login-remarks1 {
    font-size: 18px;
}

.login-remarks2 {
    font-size: 24px;
    font-weight: bold;
    padding-top: 10px;
}

.produtVideoPlay {
    max-width: 800px;
    max-height: 450px;
}

    .produtVideoPlay img {
        max-width: 600px;
        max-height: 450px;
    }

/* Container for the centered inquiry divider */
.inquiry-header-divider {
    display: flex;
    align-items: center;
    text-align: center;
    color: #6c757d; /* Muted text color */
    font-size: 0.875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 1.5rem 0;
}

    /* Horizontal line before and after the text */
    .inquiry-header-divider::before,
    .inquiry-header-divider::after {
        content: '';
        flex: 1;
        border-bottom: 1px solid #dee2e6; /* Standard Bootstrap border color */
    }

    /* Spacing around the text content */
    .inquiry-header-divider span {
        padding: 0 1rem;
    }


.conversation-starter-card {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border: 1px dashed #ced4da;
    border-radius: 1rem;
    padding: 2rem 1.5rem;
    text-align: center;
    max-width: 480px;
    margin: 1.5rem auto;
    margin-top: 0px;
    transition: all 0.3s ease-in-out;
}

    /* Subtly highlight on hover */
    .conversation-starter-card:hover {
        border-color: #0d6efd;
        box-shadow: 0 4px 12px rgba(13, 110, 253, 0.08);
    }

/* Animated or highlighted icon wrapper */
.conversation-starter-icon {
    width: 60px;
    height: 60px;
    background-color: #ffffff;
    color: #0d6efd;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.75rem;
    margin: 0 auto 1.25rem auto;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

/* Card Heading */
.conversation-starter-title {
    font-size: 1.1rem;
    font-weight: 700;
    color: #212529;
    margin-bottom: 0.5rem;
}

/* Card Body Text */
.conversation-starter-text {
    font-size: 0.875rem;
    color: #6c757d;
    line-height: 1.6;
    margin-bottom: 0;
}

section.venue01 .session-ttl a,
section.venue02 .session-ttl a,
section.venue03 .session-ttl a,
section.venue04 .session-ttl a,
section.venue05 .session-ttl a,
section.venue06 .session-ttl a,
section.venue07 .session-ttl a,
section.venue08 .session-ttl a,
section.venue09 .session-ttl a,
section.venue10 .session-ttl a,
section.venue11 .session-ttl a,
section.venue12 .session-ttl a,
section.venue13 .session-ttl a,
section.venue14 .session-ttl a,
section.venue15 .session-ttl a,
section.venue16 .session-ttl a,
section.venue17 .session-ttl a,
section.venue18 .session-ttl a,
section.venue19 .session-ttl a,
section.venue20 .session-ttl a {
    color: #337ab7;
}

.loading-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.85); /* White semi-transparent background */
    z-index: 9999; /* Ensures it sits on top of absolutely everything (modals, navbars, etc.) */
    /* Flexbox to center the content perfectly */
    display: none; /* Hidden by default */
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.backtotop {
    z-index: 1031;
}

.exhi-items.Exhibitor {
    box-shadow: none !important;
    position: relative !important;
    border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
    --bs-border-opacity: 1;
    border-color: #1a81c1 !important;
    border-width: 5px !important;
}

.badge-Exhibitor {
    background-color: #1a81c1 !important;
    color: white;
    font-size: small;
    vertical-align: middle;
}

.exhi-items.Visitor {
    box-shadow: none !important;
    position: relative !important;
    border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
    --bs-border-opacity: 1;
    border-color: #e4a621 !important;
    border-width: 5px !important;
}

.badge-Visitor {
    background-color: #e4a621 !important;
    color: white;
    font-size: small;
    vertical-align: middle;
}

.exhi-items-products .card-body:not(:has(img)) {
    max-height: none;
    height: auto;
    border: none !important;
    padding: 0px !important;
}

.exhi-details-accordion .cate-label-list {
    margin-bottom: 5px !important;
}

.timetb-date a, .timetb-date a:hover {
    background: #9fa6a7;
}

    .timetb-date a.active {
        background: var(--bs-primary) !important;
        color: var(--bs-white) !important;
    }

.visitorCategory .cate-label-list {
    margin-bottom: 0.5rem !important;
}

.video-thumbnail-part {
    cursor: pointer;
    overflow: hidden;
    transition: box-shadow 0.3s ease;
}

    /* Hover style: Keeps position completely still */
    .video-thumbnail-part:hover {
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); /* Optional: slight shadow depth */
    }

    /* Optional: Slight image zoom inside the box without moving the container */
    .video-thumbnail-part img {
        transition: transform 0.3s ease;
    }

    .video-thumbnail-part:hover img {
        transform: scale(1.1);
    }

.video-thumbnail-part {
    max-width: 100%;
    width: 100%;
    min-width: 0; /* 手機可收窄，唔再撑 scroll-x */
    /* 唔好清 min-height */
}

@media (min-width: 576px) {
    .video-thumbnail-part {
        min-width: 420px; /* desktop 先用 420 */
    }
}

@media (min-width: 992px) {
    .head-icons-col .head-icons-break {
        display: none !important;
    }
}

@media (min-width: 768px) {
    .invitation-flow.custom-invitation2 .row > * {
        flex: 0 0 auto;
        width: 50%;
    }
}

/* 1. Removes the border if the element is immediately followed by your w-100 item */
.row > div[class^="exhi-items-"]:has(+ .w-100)::after {
    display: none !important;
}

/* 2. Removes the border if a normal item is the absolute last child in the row */
.row > div[class^="exhi-items-"]:last-child::after {
    display: none !important;
}

/* 3. (Optional) Ensure the w-100 item itself doesn't have a stray border either */
.row > .w-100::after {
    display: none !important;
}