/*var(--black)
    Structure instruction：
    # [Default Css]
        - [Root Css]: :root { ... }
        - [Structure]: html, body, main, #wrap ...
        - [HtmlTag]: h1, a, ::-webkit-scrollbar ...

    # [Plugins]
        - [Plugins Modified]: Bootstrap Modals...
        - [Plugins SelfMade]: My Modals...

    # [Public Style]
        - [Simple Css]: typesetting, color, fonts ... ( Single Css )
        - [Components]: btn, modal, select, radio ... ( Use frequently )
        - [Templates]: user_btn, user_alert18_Box ... ( Use when more than 2 pages, custom )

    # [Pages]
        - [Include Pages]: header, footer
        - [Current Pages]: #login, #about

    -- Author Comebuy
*/


/*######### [Default Css] #########*/
    /*###### [Root Css] ######*/
        :root {
            --red: #e74356;
            --black: #2c2c2c;
            --gray-70: #707070;
            --gray-99: #999999;
            --gray-c7: #c7c7c7;
            --gray-d6: #d6d6d6;
            --gray-ef: #efefef;
            --gray-f5: #f5f5f5;

            --main: #00857e;
            --main-hover: #0a9790;
            --main-light: #dce26e;
            --secondary: #ed6c00;
            --secondary-hover: #f68323;
            --secondary-dark: #10386b;
            --secondary-dark-hover: #18539e;

            --table-hover: #f0f8f7; /* color-mix(in srgb, var(--main) 6%, white); */
            --table-striped-odd: #f7f7f7;
            --table-striped-even: #f4f8f1; /* #d6e9ca */

            --header-height: 100px;
            --fs-p: 18px;
            --fs-h1: 36px;
            --fs-h2: 21px;
            --fs-h6: 14px;
            --fs-btn: 16px;
        }
        @media ( max-width: 767.98px ){
            :root, ::before, ::after {
                --fs-p: 16px;
                --fs-h1: 28px;
                --fs-h2: 19px;
                --fs-h6: 14px;
                --fs-btn: 15px;
            }
        }
        @media ( max-width: 575.98px ){
            :root, ::before, ::after {
                --fs-p: 14px;
                --fs-h1: 24px;
                --fs-h2: 17px;
                --fs-h6: 13px;
                --fs-btn: 13px;
            }
        }

    /*###### [Structure] ######*/
        html { scroll-behavior: smooth; }
        body { font-family: "Noto Sans", "Noto Sans TC", "Arial", "Microsoft JhengHei"; font-size: var(--fs-p); color: var(--black); animation: 0.5s op1; }
        @keyframes op1 {
            from { opacity: 0.75;}
            to { opacity: 1;}
        }

        #wrap { display: flex; flex-direction: column; min-height: 100vh; max-width: 1920px; margin-left: auto; margin-right: auto; }
        main { padding-bottom: 100px; flex-grow: 1; }
        @media (max-width: 991.98px) {
            main { padding-bottom: 70px; }
        }
        

    /*###### [Default Html] ######*/
        textarea { border: solid 1px var(--gray-70); }
        a { color: inherit; text-decoration: none; }
        a:hover { color: inherit; }


/*######### [Plugins] #########*/
    /*###### [Plugins Modified] ######*/
        /*=== Bootstrap ===*/
            @media (min-width: 1600px) {
                .container, .container-sm, .container-md, .container-lg, .container-xl, .container-xxl { max-width: 1540px; }
            }

            /* table */
            .table td, .table th { padding: 20px 12px; vertical-align: top; border-top: 1px solid #dee2e6; }
            .table-hover > tbody > tr:hover { color: inherit; background-color: var(--table-hover); }

            /* btn */
            .btn { display: inline-flex; align-items: center; justify-content: center; font-weight: bold; padding: 8px 15px; font-size: var(--fs-btn); border-radius: 4px; min-height: 42px;}


            /* nav */
            .navbar-toggler { padding: 0; border-radius: 0; }
            .navbar-brand { margin-right: 1rem; padding: 0; }
            .nav .nav-link { --main-hover: var(--main-light); position: relative; padding: 16px 24px; background-color: var(--main-hover); color: var(--gray-ef); font-size: 20px; font-style: italic; }
            .nav .nav-link:is(:hover,:focus) { background-color: var(--main); color: white; }
            .nav .nav-link.active { background-color: white; color: var(--main); font-weight: bold; }
            .nav .nav-link.active::before { content: ''; display: block; position: absolute; left: 0; top: 0; width: 100%; height: 5px; background-color: var(--main); z-index: 1; }
            @media (max-width: 1199.98px) {
                .nav .nav-link { padding: 15px 10px; font-size: 16px; }
            }

            .nav.nav-pills .nav-link { padding: 8px 12px; background: var(--gray-ef); color: var(--main); border-radius: 4px; font-size: var(--fs-btn); font-style: normal; }
            .nav.nav-pills .nav-link:is(:hover,:focus,.active) { background: var(--main); color: white; }
            .nav.nav-pills .nav-link.active::before { display: none; }


            /* form */
            .form-label { font-size: 14px; font-weight: bold; }
            .form-control, .form-select { min-height: 42px; font-size: var(--fs-p); }
            .form-control:focus, .form-select:focus { box-shadow: none; }
            .form-control:disabled { background-color: #e4e4e4; color: var(--gray-70); }
            .form-control::placeholder { color: var(--gray-99) }
            .form-control[readonly] { background-color: white; }

            /* pagination */
            .pagination { align-items: center; font-size: var(--fs-h2); }
            .page-item .page-link { border: none; font-weight: bold; color: var(--black); background: transparent; display: flex; align-items: center; justify-content: center; padding: 0 4px; min-width: 30px; height: 30px; }
            .page-item .page-link:focus { box-shadow: none; }
            .page-item .page-link.prev,
            .page-item .page-link.next { border-radius: 20px; color: white; background-color: var(--main); padding: 0; display: flex; align-items: center; justify-content: center; width: 30px; height: 30px; }
            .page-item .page-link.prev { margin-right: 8px; }
            .page-item .page-link.next { margin-left: 8px; }
            .page-item.disabled .page-link.prev,
            .page-item.disabled .page-link.next { filter: grayscale(1) opacity(0.4); }
            .page-item .page-link.prev::after { content: '\f053'; font-family: 'Font Awesome 5 Free'; font-size: 0.9em; font-weight: 900; display: inline; line-height: 1; }
            .page-item .page-link.next::after { content: '\f054'; font-family: 'Font Awesome 5 Free'; font-size: 0.9em; font-weight: 900; display: inline; line-height: 1; }
            .page-item.active .page-link { color: var(--main); background: transparent; }

            /* modal */
            .modal-content { background-clip: border-box; border: none; border-radius: 0; }
            .modal-header { border-bottom: none; padding: 0; }
            .modal-header .close { padding: 0; border-radius: 0; min-height: unset; width: 40px; height: 40px; border: 0; background: url(../img/icon/icon_close.png) center center no-repeat; background-size: contain; }
            .modal-body { padding: 16px 16px 48px 16px; }
            @media (max-width: 575.98px) {
                .modal-header .close { width: 32px; height: 32px; }
            }
            .modal-backdrop { background-color: var(--gray-99); }
            .modal-backdrop.show { opacity: 1; }

            /* other */
            .ratio-9x5 { --bs-aspect-ratio: 55.556%; }
            .dropdown-menu { border-radius: 0; }
            .breadcrumb { padding: 0.5rem 0; margin-bottom: 0; font-size: 14px; }
            .breadcrumb-item + .breadcrumb-item::before { --bs-breadcrumb-divider: '>'; color: var(--gray-c7); }
            @media (max-width: 991.98px) {
                .breadcrumb { display: none; }
            }


        /*=== swiper ===*/
            .swiper-button-next, .swiper-button-prev { width: calc( 16px + 3vw ); color: #fff; font-weight: bold; }
            .swiper-button-next:hover, .swiper-button-prev:hover { color: #eee; }
            .swiper-button-next:focus, .swiper-button-prev:focus { outline: none; }
            .swiper-button-next::after, .swiper-button-prev::after { padding: calc( 6px + 0.5vw ) calc( 12px + 0.5vw ); font-size: calc( 24px + 2vw ); }
            .swiper-pagination-bullet-active { --swiper-pagination-color: rgba(0,0,0,0.6); }


        /*=== plyr ===*/
            .plyr--audio .plyr__controls { 
                --plyr-color-main: transparent;
                --plyr-audio-controls-background: transparent;
                --plyr-audio-control-color: white;
                /* --plyr-audio-control-background-hover: transparent; */
                --plyr-range-fill-background: white;
            }

            .plyr__volume input[type=range]{
                /* --plyr-range-fill-background: var(--secondary-dark-hover); */
            }

            


/*######### [Public Style] #########*/
    /*###### [Simple Css] ######*/
        /*=== color ===*/
            .c_red { color: var(--red) !important; }
            .c_main { color: var(--main) !important; }
            .c_secondaryDark { color: var(--secondary-dark) !important; }
            .c_gray7 { color: var(--gray-70) !important; }
            .c_gray9 { color: var(--gray-99) !important; }
            .c_grayC { color: var(--gray-c7) !important; }
            .c_black { color: var(--black) !important; }

            .bg_grayF { background-color: var(--gray-f5) !important; }
            .bg_grayE { background-color: var(--gray-ef) !important; }


        /*=== font ===*/
            .fz_h1 { font-size: var(--fs-h1); }
            .fz_h2 { font-size: var(--fs-h2); }
            .fz_h6 { font-size: var(--fs-h6); }


        /*=== typesetting ===*/
            .ch-mr-2 > *:not(:last-child) { margin-right: 0.5rem; }
            .ch-mr-3 > *:not(:last-child) { margin-right: 1rem; }
            .ch-mb-1 > *:not(:last-child) { margin-bottom: .25rem; }
            .ch-mb-2 > *:not(:last-child) { margin-bottom: 0.5rem; }
            .ch-mb-3 > *:not(:last-child) { margin-bottom: 1rem; }
            .ch-mb-4 > *:not(:last-child) { margin-bottom: 1.5rem; }
            .ch-mb-5 > *:not(:last-child) { margin-bottom: 3rem; }

            .container_600 { max-width: 600px; margin-left: auto; margin-right: auto; }
            .container_720 { max-width: 720px; margin-left: auto; margin-right: auto; }
            .container_840 { max-width: 840px; margin-left: auto; margin-right: auto; }
            .container_980 { max-width: 980px; margin-left: auto; margin-right: auto; }
            .container_1200 { max-width: 1200px; margin-left: auto; margin-right: auto; }
            .min_w_90 { min-width: 90px; }
            .container_padding_top { padding-top: 3rem; }
            @media (max-width: 575.98px) {
                .container_padding_top { padding-top: 1rem; }
            }


        /*=== other ===*/
            .pointer-events-none { pointer-events: none; }
            .img-rd { image-rendering: -webkit-optimize-contrast; }

            .list_marker { list-style: none; padding-left: 1em; }
            .list_marker > * { position: relative; }
            .list_marker > *::before { content: ''; position: absolute; width: 0.5em; height: 0.5em; background-color: var(--main); display: block; left: -1em; top: 0.75em; transform: translateY(-50%);  }

            .list_custom { list-style: none; }
            .list_custom li { text-indent: 0; }
            .list_custom > li { padding-left: 2rem; text-indent: -2rem; }


    /*###### [Components] ######*/
        /*=== <a> href ===*/
            .alink { color: var(--main); text-decoration: underline; word-wrap: break-word; }
            .alink:hover, alink:focus { color: var(--main-hover); }
            .hrefText::before { content: attr(href); word-wrap: break-word; }


        /*=== rounded avatar ===*/
            .rounded_avatar_lg { width: 220px; height: 220px; border-radius: 220px; background-size: cover; background-repeat: no-repeat; background-position: center center; }
            .rounded_avatar_md { width: 110px; height: 110px; border-radius: 110px; background-size: cover; background-repeat: no-repeat; background-position: center center; }
            .rounded_avatar_sm { width: 90px; height: 90px; border-radius: 90px; background-size: cover; background-repeat: no-repeat; background-position: center center; }


        /*=== background-image set ===*/
            .bg_img { background-repeat: no-repeat; background-position: center center; background-size: cover; }
            .bg_full { height: 100%; width: 100%; }
            .bg_fixed { background-attachment: fixed; }
            .bg_top { background-position-y: top; }
            .bg_contain { background-size: contain; }


        /*=== buttons ===*/
            .btn_gray { background-color: var(--gray-99); color: #fff; }
            .btn_gray:hover,
            .btn_gray:focus { background-color: var(--gray-c7); color: #fff; }

            .btn_main { background-color: var(--main); color: white; }
            .btn_main:hover,
            .btn_main:focus { background-color: var(--main-hover); color: white; }

            .btn_outline_main { background-color: white; color: var(--main); border: 1px solid var(--main); }
            .btn_outline_main:hover,
            .btn_outline_main:focus { background-color: white; color: var(--main-hover); border: 1px solid var(--main-hover); }
            
            .btn_secondary { background-color: var(--secondary); color: white; }
            .btn_secondary:hover,
            .btn_secondary:focus { background-color: var(--secondary-hover); color: white; }

            .btn_outline_secondary { background-color: white; color: var(--secondary); border: 1px solid var(--secondary); }
            .btn_outline_secondary:hover,
            .btn_outline_secondary:focus { background-color: white; color: var(--secondary-hover); border: 1px solid var(--secondary-hover); }

            .btn_secondaryDark { background-color: var(--secondary-dark); color: white; }
            .btn_secondaryDark:hover,
            .btn_secondaryDark:focus { background-color: var(--secondary-dark-hover); color: white; }

            .btn_with_img { display: inline-flex; align-items: center; justify-content: center; }
            .btn_with_img > * { padding: 0 0.2em; }
            .btn_with_img > *:first-child { padding-left: 0; }
            .btn_with_img > *:last-child { padding-right: 0; }

            .btn_group { display: flex; flex-wrap: wrap; margin-top: -0.5rem; }
            .btn_group > * { margin-top: 0.5rem; margin-right: 0.5rem; }

            .btn_download { color: var(--main); }
            .btn_download:hover,
            .btn_download:focus { color: var(--main-hover); }


        /*=== text-more ===*/
            .text_more_2 { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
            .text_more_3 { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }


    /*###### [Templates] ######*/
        /*=== rwd_table ===*/
            .rwd_table { color: var(--black); width: 100%; border-collapse: collapse; }
            .rwd_table > thead > tr > th { padding: 20px 12px; font-size: var(--fs-h6); vertical-align: bottom; border-bottom: 1px solid var(--gray-d6); color: var(--black); white-space: nowrap; }
            .rwd_table > tbody > tr > td { padding: 20px 12px; font-size: var(--fs-p); vertical-align: middle; border-top: 1px solid var(--gray-d6); }
            .rwd_table > thead > tr > th:first-child,
            .rwd_table > tbody > tr > td:first-child { padding: 0; }

            .rwd_table--striped > tbody > tr:nth-child(odd) { background-color: var(--table-striped-odd); }
            .rwd_table--striped > tbody > tr:nth-child(even) { background-color: var(--table-striped-even); }
            .rwd_table--striped > thead > tr > th { padding-top: 4px; padding-bottom: 4px; border-top: 1px solid var(--gray-d6); }
            .rwd_table--striped > tbody > tr > td { border-color: white; }
            .rwd_table--striped > thead > tr > th:first-child,
            .rwd_table--striped > tbody > tr > td:first-child { padding-left: 12px; }
            .rwd_table--striped > thead > tr > th:last-child,
            .rwd_table--striped > tbody > tr > td:last-child { padding-right: 24px; }

            .rwd_table > tbody > tr.sp_tag > td:nth-child(1) { position: relative; }
            .rwd_table > tbody > tr.sp_tag > td:nth-child(1)::before { content: "HOT"; display: inline-block; text-align: center; padding: 6px 10px; color: #fff; font-size: 14px; font-weight: bold; background-color: var(--red); position: absolute; left: 0; top: 50%; transform: translate(-50%,-50%); }

            @media ( min-width: 1200px ){
                .rwd_table > tbody > tr:hover { background-color: var(--table-hover); }
                .rwd_table--striped > tbody > tr:hover { background-color: #eee; }
            }
            @media ( max-width: 1199.98px ){
                .rwd_table > thead > tr > th { display: none; }
                .rwd_table > tbody > tr > td { display: block; border-top: none; text-align: left; padding: 0 20px 20px 20px; }
                .rwd_table > tbody > tr > td:first-child { padding: 0; }
                .rwd_table > tbody > tr > td:nth-child(2) { padding-top: 20px; }
                .rwd_table > tbody > tr > td[data_th]:before { content: attr(data_th) ""; font-weight: bold; font-size: var(--fs-h6); display: block; color: var(--black); margin-bottom: 8px; }
                .rwd_table--striped > tbody > tr > td:last-child { border-bottom: 1px solid white; }
            }


        /*=== editor ===*/
            .editor_container { font-size: var(--fs-p); }
            .editor_container h1 { font-size: var(--fs-h1); }
            .editor_container h2 { font-size: var(--fs-h2); font-weight: bold; }
            .editor_container a[href] { color: var(--main); text-decoration: underline; word-wrap: break-word; }
            .editor_container a[href]:hover, 
            .editor_container a[href]:focus { color: var(--main-hover); }
            .editor_container a[download]::before { content: '\f0c6'; font-family: 'Font Awesome 5 Free'; font-weight: 900; display: inline-block; padding-right: .5em; }

            .editor_container table { border: solid 1px var(--gray-99); }
            .editor_container table th,
            .editor_container table td { border: solid 1px var(--gray-99); padding: 10px 20px; font-weight: 400; }
            .editor_container table > thead > tr > *,
            .editor_container table > tbody > tr > * { font-size: var(--fs-p); }
            @media ( max-width: 575.98px ){
                .editor_container table th,
                .editor_container table td { padding: 10px 12px; }
            }
            /* 後台有<table>時，會在後台編輯器加上 tablescroll */
            @media screen and (max-width: 991.98px) {
                .tablescroll { overflow-x: auto; }
                .tablescroll > table { width: max-content; max-width: 1156px; }
            }


        /*=== title ===*/
            .main_title_banner { background: url(../img/APDC_2024@2x.jpg) center center no-repeat; background-size: cover; height: clamp(72px, 18vw, 240px); display: flex; align-items: center; justify-content: center; color: white; text-shadow: 0 0 2px #ccc; }
            .banner_2020 { background-image: url(../img/TIBCS_2020@2x.jpg); }
            .banner_2021 { background-image: url(../img/TIBCS_2021@2x.jpg); }
            /*.banner_2022 { background-image: url(../img/TIBCS_2022@2x.png); }*/
            .banner_2022 { background-image: url(../img/TIBCS_2023@2x.png); }
            .banner_2023 { background-image: url(../img/TIBCS_2023@2x.png); }
            .banner_2024 { background-image: url(../img/APDC_2024@2x.jpg); }

            .main_title { font-family: 'Noto Sans'; font-size: clamp(18px,3.5vw,36px); margin-bottom: 0; font-weight: bold; opacity: 0; transform: translateY( calc(1em + 50px) ); animation: 1s titleSlideDown forwards; }
            .main_title_year { font-family: 'Roboto'; font-size: clamp(30px,6.5vw,76px); font-weight: bold; line-height: 1; margin-bottom: clamp(3px,1vw,16px); opacity: 0; transform: translateY( 150px ); animation: 1s titleSlideDown forwards; }
            .main_title_line { padding: 0; border: none; border-top: 2px solid white; opacity: 0; transform: translateY( 80px ); animation: 1s titleSlideDown 0.25s forwards; }
            .main_title_line > legend { float: none; width: auto; margin: auto; font-style: italic; }
            .main_title_line > legend > .main_title { font-weight: normal; font-size: clamp(16px,3vw,32px); padding: 0 0.4em; opacity: 1; animation-duration: 0s; }
            @keyframes titleSlideDown {
                100% { opacity: 1; transform: translateY(0); }
            }


        /*=== form_card ===*/
            .form_card { padding: 30px 60px; }
            @media (max-width: 575.98px){
                .form_card { padding: 20px 20px; }
            }



/*######### [Pages] #########*/
    /*###### [Include Pages] ######*/
        /*=== header.html ===*/
            header { position: relative; background-color: #ffffff; z-index: 10; /*font-family: "Noto Sans", "Noto Sans TC", "Microsoft JhengHei";*/ }
            header::after { content: ""; display: block; position: absolute; left: 0; right: 0; bottom: 0; transform: translate(0,100%); height: 20px; background-image: linear-gradient( to bottom, rgba(0, 133, 126, 0.3), rgba(155, 209, 206, 0) ); }
            header > .header_body { display: flex; justify-content: space-between; padding: 12px 0; }
            /* menu */
            header .navbar-light .navbar-toggler { padding: 0; width: 42px; height: 42px; background-color: var(--main-light); color: white; font-size: 28px; }
            header .navbar-brand { margin-right: 0.25rem; padding: 0; }
            header .nav_links { flex-grow: 1; display: inline-flex; flex-wrap: wrap; align-items: center; margin: 0; list-style: none; padding-left: max(16px,5vw); }
            header .nav_links a { display: block; padding: 10px 18px; font-size: 17px; color: var(--black); white-space: nowrap; cursor: pointer; text-decoration: none; }
            header .nav_links a:hover,
            header .nav_links a.active { color: var(--main-hover); }
            header .nav_links > .nav-item:not(.last_item) > a { border-right: solid 1px #e4e4e4; }
            @media (max-width: 1599.98px) {
                header .nav_links { padding-left: max(12px,1vw); }
                header .nav_links a { padding: 8px 10px; font-size: 16px; }
            }
            @media (max-width: 991.98px) {
                header::after { height: 10px; }
                header .nav_links { display: block; padding-left: 0; margin-top: 12px; } 
                header .nav_links a { display: block; padding: 12px 18px; margin-bottom: 1px; font-size: 16px; color: var(--black); white-space: nowrap; background-color: var(--main-light); }
            }
            header .nav_links .nav_login { margin-left: auto; }
            header .nav_links .nav_login > a { font-size: 14px; }


            /* dropdown */
            header .dropdown > .dropdown-toggle::after { border: none; content: '\f107'; font-size: 0.9em; font-family: 'Font Awesome 5 Free'; font-weight: 900; vertical-align: middle; }            
            header .dropdown > .dropdown-menu { padding: 0; min-width: 11rem; }
            header .dropdown > .dropdown-menu > li > a.dropdown-item { margin-bottom: 1px; }
            header .dropdown > .dropdown-menu > li:last-child > a.dropdown-item { margin-bottom: 0; }
            header .dropdown-item:focus, 
            header .dropdown-item:hover { background-color: inherit; }
            header .dropdown.dropdown_level1 > .dropdown-menu { background-color: white; margin-top: 0.2rem; }
            header .dropdown.dropdown_level1 > .dropdown-menu > li > a.dropdown-item { padding: 9px 18px 9px 18px; background-color: #e9e9e9; }
            header .dropdown.dropdown_level2 > .dropdown-menu { background-color: #e9e9e9; position: static !important; border: 0; }
            header .dropdown.dropdown_level2 > .dropdown-menu > li > a.dropdown-item { padding: 7px 18px 7px 32px; background-color: #f5f5f5; }
            @media (max-width: 991.98px) {
                header .dropdown.dropdown_level1 > .dropdown-menu { background-color: white; margin-top: 0; }
                header .dropdown.dropdown_level1 > .dropdown-menu > li > a.dropdown-item { padding: 8px 12px 8px 36px; background-color: #e9e9e9; }
                header .dropdown.dropdown_level2 > .dropdown-menu { background-color: white; margin-top: 0; }
                header .dropdown.dropdown_level2 > .dropdown-menu > li > a.dropdown-item { padding: 6px 12px 6px 54px; background-color: #f5f5f5; }
            }
            [aria-expanded=false] .aria-expanded-true { display: none; }
            [aria-expanded=true] .aria-expanded-false { display: none; }


        /*=== footer.html ===*/
            footer { position: relative; background-color: var(--gray-f5); z-index: 9; } 
            footer .copyright { font-size: 12px; text-align: center; color: var(--gray-70); letter-spacing: 1.2px; }
            .footer_top { position: sticky; bottom: 0; width: 100%; max-width: 1650px; margin: 0 auto; }
            /* .footer_top.mostBottom { position: absolute; top: 0; left: 0; right: 0; bottom: auto; } */
            .footer_container { display: flex; padding-top: 3rem; padding-bottom: 3rem; }
            .footer_block1 { flex: 2; display: flex; align-items: center; justify-content: center; padding-right: 2rem; }
            .footer_block2 { flex: 3; display: flex; flex-direction: column; }
            .footer_block2 .subscribe { display: flex; align-items: center; text-align: center; flex-wrap: wrap; margin-bottom: 1rem; }
            .footer_block2 .subscribe > * { margin-bottom: 1rem; }
            .footer_block2 .subscribe > *:not(:first-child) { margin-left: 1rem; }
            .footer_block2 .infoList { display: flex; flex-direction: column; align-items: start; }
            .footer_block2 .infoList > .info { display: flex; align-items: center; margin: 0 1rem 0.5rem 0; font-size: 14px; }
            .footer_block2 .infoList > .info > .icon { flex: 1 0 24px; width: 24px; font-size: 20px; text-align: center; margin-right: 0.5rem }

            @media (max-width: 1199.98px) {
                .footer_container { flex-direction: column; align-items: center; }
                .footer_block1 { margin-bottom: 2rem; padding-right: 0; }
                .footer_block2 .infoList { max-width: 400px; margin-top: 1rem; }
                .footer_block2 .subscribe { max-width: 400px; align-self: center; flex-direction: column; justify-content: center; align-items: unset; }
                .footer_block2 .subscribe > * { margin: 0 0 1rem 0; }
            }

            #backToTop { display: none; position: absolute; right: 12px; bottom: 12px; }
            #backToTop > .btn { display: flex; flex-direction: column; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0; font-size: 14px; line-height: 1.25; box-shadow: 0 0 4px #ccc; }



    /*###### [Current Pages] ######*/
        /*=== index.html ===*/
            .index_banner_height { height: 500px; }
            .index_banner { position: relative; }
            .index_countdown { position: absolute; top: 0; bottom: 0; right: 0; z-index: 1; display: flex; flex-direction: column; justify-content: center; background-color: rgba(0,0,0,0.6); text-align: center; color: white; }
            .index_countdown > * { padding: 10px 30px; font-size: 18px; min-width: 76px; }
            .index_countdown .time { font-size: 48px; line-height: 1; margin-bottom: 4px; }
            @media (max-width: 1399.98px) {
                .index_banner_height { height: 440px; }
                .index_countdown > * { padding: 8px 20px; font-size: 16px; }
                .index_countdown .time { font-size: 44px; }
            }
            @media (max-width: 1199.98px) {
                .index_banner_height { height: 380px; }
                .index_countdown > * { padding: 6px 16px; font-size: 14px; }
                .index_countdown .time { font-size: 36px; }
            }
            @media (max-width: 991.98px) {
                .index_banner_height { height: 300px; }
                .index_countdown > * { padding: 4px 8px; font-size: 13px; }
                .index_countdown .time { font-size: 30px; margin-bottom: 2px; }
            }
            @media (max-width: 767.98px) {
                .index_banner_height { height: clamp(180px,40vw,300px); }
                .index_countdown { padding: 12px 0; position: static; flex-direction: row; justify-content: center; flex-wrap: wrap; align-items: center; background-color: var(--black); }
                .index_countdown .time { font-size: 36px; margin-bottom: 4px; }
                .index_countdown > * { padding: 4px 12px; font-size: 14px; }
                .index_countdown > .untilText { font-size: 16px; }
            }
            @media (max-width: 575.98px) {
                .index_countdown > .untilText { width: 100%; min-width: unset; }
            }

            .index_section_title { display: flex; align-items: center; font-size: var(--fs-h2); color: var(--secondary-dark); font-weight: bold; justify-content: center; }
            .index_section_title > i:first-child { margin-right: 12px; font-size: 1.5em; }
            .index_news_block { display: block; border-left: 8px solid #ffef92; padding: 0 24px 0 24px; }
            @media (max-width: 575.98px){
                .index_news_block { border-left-width: 4px; padding: 0 0 0 12px; }
            }

            .index_keyDates_block { border-radius: 4px; padding: 15px 0; display: flex; align-items: center; }
            .index_keyDates_block.block1 { background-color: #ffef92; }
            .index_keyDates_block.block2 { background-color: #d6e9ca; }
            .index_keyDates_block.block3 { background-color: #dce26e; }
            .index_keyDates_block > .left { flex-shrink: 0; border-right: solid 1px white; text-align: center; width: 120px; }
            .index_keyDates_block > .left > .date { font-size: var(--fs-h2); font-weight: bold; white-space: nowrap; }
            .index_keyDates_block > .right { flex: 1; padding: 0 24px; font-size: var(--fs-h2); display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
            .index_keyDates_block > .addIcon { padding-right: 16px; }
            .index_keyDates_block > .addIcon > .icon_calendar { display: inline-block; width: 40px; height: 40px; background: url(../img/icon/icon_calendar_add.png) center center no-repeat; background-size: contain; }
            @media (max-width: 575.98px){
                .index_keyDates_block { padding: 12px 0; }
                .index_keyDates_block > .left { width: 90px; }
                .index_keyDates_block > .right { padding: 0 16px; }
                .index_keyDates_block > .addIcon > .icon_calendar { width: 30px; height: 30px; }
            }
            .index_channel_bg { background: #f7f7f7; }

            .index_channel { padding: 0 48px; }
            .index_channel_container { position: relative; }
            .index_channel_navigation { --swiper-navigation-color: #7d7d7d; position: absolute; top: 0; left: -60px; height: 100%; width: calc(100% + 120px); z-index: 0; }
            @media (max-width: 1199.98px){
                .index_channel { padding: 0 36px; }
                .index_channel_navigation { left: -44px; width: calc(100% + 88px); }
                .index_channel_navigation .swiper-button-prev,
                .index_channel_navigation .swiper-button-next { --swiper-navigation-size: 28px; }
            }


        /*=== greeting.html ===*/
            .greeting_sign { width: 164px; }
            .greeting_avatar { margin-right: 3rem; }
            @media (max-width: 767.98px){
                .greeting_avatar { width: 180px; height: 180px; margin-right: 2rem; }
                .greeting_sign { width: 128px; }
            }
            @media (max-width: 575.98px){
                .greeting_avatar { width: 120px; height: 120px; margin-right: 1.5rem; }
                .greeting_sign { width: 82px; }
            }


        /*=== Overview.html ===*/
            .overviewRow { margin-inline: auto; padding-bottom: 48px; }
            .overviewItem { position: relative; display: flex; flex-direction: column; align-items: center; font-size: var(--fs-p); text-align: center; padding: 20px; }
            .overviewItem:not(:first-child)::before { content: ''; position: absolute; left: 0; top: 0; width: 1px; height: 100%; background: var(--gray-d6); }
            .overviewItem ._img { flex: 0 0 120px; }
            .overviewItem ._img > img { width: 100%; }
            .overviewItem ._text { flex: 1 1 auto; margin-top: 24px; }
            .overviewItem ._title { font-weight: bold; margin-bottom: 10px; }
            .overviewItem:nth-child(1) ._title { color: var(--secondary-dark); }
            .overviewItem:nth-child(2) ._title { color: #8C3A9F; }
            .overviewItem:nth-child(3) ._title { color: var(--main); }
            .overviewItem:nth-child(4) ._title { color: #EB7E99; }
            .overviewItem:nth-child(5) ._title { color: var(--main-light); }
            @media (max-width: 1199.98px) {
                .overviewRow { max-width: 650px; margin-top: -20px; }
                .overviewItem { flex-direction: row; text-align: left; }
                .overviewItem:not(:first-child)::before { width: 100%; height: 1px; }
                .overviewItem ._img { flex: 0 0 100px; }
                .overviewItem ._text { padding-left: 20px; margin-top: 0; }
            }
            @media (max-width: 767.98px) {
                .overviewRow { max-width: 580px; padding-bottom: 16px; }
                .overviewItem ._img { flex: 0 0 72px; }
            }


        /*=== speakers.html ===*/
            .speakers_container { padding-block: 36px 0px; }
            .speakers_row_title { font-size: var(--fs-h1); color: var(--main-hover); text-align: center; }
            .speakers_row { padding-bottom: 60px; }
            .speakers_col { padding: 30px 20px; text-align: center; }
            .speakers_avatar { margin: auto; cursor: pointer; flex-shrink: 0; transition: transform .4s ease; }
            .speakers_text { font-style: italic; margin-top: 30px; }
            .speakers_name { font-size: 22px; color: var(--secondary-dark); }
            .speakers_country { font-size: 16px; margin-top: 10px; color: var(--gray-70); }
            .speakers_col:hover .speakers_avatar { transform: scale(1.1); }
            @media (max-width: 575.98px) {
                .speakers_container { padding-block: 20px; }
                .speakers_row { padding-bottom: 20px; display: inline-flex; flex-wrap: initial; flex-direction: column; align-content: center; }
                .speakers_col { display: flex; padding: 15px 20px; flex-direction: row; justify-content: start; align-items: center; }
                .speakers_avatar { margin: unset; width: 90px; height: 90px; border-radius: 90px; }
                .speakers_text { margin-top: 0; padding-left: 20px; text-align: left; }
                .speakers_name { font-size: 18px; }
                .speakers_country { font-size: 14px; }
            }
        
            /* speakersModal */
            .speakersModal .modal-body { display: flex; flex-direction: column; padding: 8px 80px 50px 80px; line-height: 2; }
            .speakersModal_top { display: flex; }
            .speakersModal_topImg {}
            .speakersModal_topText { display: inline-flex; flex-direction: column; justify-content: center; font-style: italic; font-size: 16px; padding-left: 40px; }
            .speakersModal_name { font-size: 22px; margin-bottom: 4px; color: var(--secondary-dark); }
            .speakersModal_info { color: var(--gray-99); }
            .speakersModal_autobiography { font-size: 16px; margin-top: 30px; }
            @media (max-width: 991.98px) {
                .speakersModal .modal-body { padding: 8px 24px 30px 24px; }
                .speakersModal_top { flex-direction: column; }
                .speakersModal_topImg { margin-inline: auto; }
                .speakersModal_topText { padding-left: 0; padding-top: 20px; font-size: 14px; }
                .speakersModal_autobiography { font-size: 14px; }
            }


        /*=== program.html ===*/
            .program_table > tbody > tr.expired { color: #aeaeae }
            .program_table > tbody > tr.tag_now { color: var(--red) !important; }
            .program_table > tbody > tr.tag_now > td:first-child::before { content: "NOW"; }
            .program_tab_list_box { display: flex; flex-wrap: wrap-reverse; }
            .program_tab_content { background-color: #fff; padding: 20px 50px; }
            .broadcasting_bg { background-image: linear-gradient(rgba(44,44,44,0.4),rgba(44,44,44,0.4)), url(../img/bg_program.jpg); }
            .broadcasting_card { padding: 40px 50px; background-color: white; box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.61); max-width: 1080px; margin: 0 auto; }
            .download_Agenda { display: inline-flex; align-items: center; justify-content: center; margin-inline: 0.25rem; }
            @media (min-width: 1200px) {
                .program_table > tbody > tr.tag_now > td:first-child::before { left: -50px; }
            }
            @media (max-width: 1199.98px) {
                .program_table > tbody > tr > td { padding-left: 0; padding-right: 0; }
                .program_table > tbody > tr.tag_now > td:first-child::before { top: 15px; left: unset; right: 0; transform: unset; }
                .program_table > tbody > tr > td:last-child { padding-bottom: 20px; }
                .program_table > tbody > tr:not(:last-child) > td:last-child { border-bottom: 1px solid var(--gray-d6); }
                .program_tab_content { padding: 16px 16px; }
            }
            @media (max-width: 575.98px) {
                .download_Agenda_nav { width: 100%; margin-bottom: 1rem; }
                .download_Agenda { order: -1; width: 100%; }
            }


        /*=== poster.html & posterDetail.html ===*/
            /* poster.html */
            .poster_table_container { background-color: #fff; padding: 0 50px; }
            .poster_table > tbody > tr > td:first-child { padding: 0; }
            .poster_table > tbody > tr > td:nth-child(2) { position: relative; }
            .poster_table > tbody > tr > td:nth-child(2) .awardMark { min-width: 40px; }
            .poster_table > tbody > tr > td:nth-child(3) { white-space: nowrap; }
            .poster_table > tbody > tr > td:nth-child(4) { max-width: 0; min-width: 100px; width: 70%; }
            .poster_table > tbody > tr > td:last-child { display: none; }
            @media (max-width: 1199.98px) {
                .poster_table_container { padding: 0; background-color: transparent; }
                .poster_table > tbody > tr > td { background-color: white; }
                .poster_table > tbody > tr > td:nth-child(2) .awardMark { position: absolute; right: 15px; top: 20px; }
                .poster_table > tbody > tr > td:nth-child(3) { white-space: unset; }
                .poster_table > tbody > tr > td:nth-child(4) { white-space: unset; overflow: unset; text-overflow: unset; max-width: unset; width: unset; }
                .poster_table > tbody > tr > td:last-child { display: block; background-color: transparent; padding-bottom: 12px; }
            }

            .searchBlock { display: flex; justify-content: center; align-items: center; padding: 40px 0 30px 0; }
            .searchInput { padding: 0 20px; max-width: 700px; border: none; background-color: white; }
            .searchBtn { margin-left: 24px; }
            @media (max-width: 575.98px) {
                .searchBlock { flex-direction: column; padding: 20px 0; }
                .searchBtn { margin: 16px 0 0 0; }
            }

            /* audioPopup (both page) */
            .audioIcon { display: inline-block; width: 30px; height: 27px; background: url(../img/icon/headphones-solid.png) center center no-repeat; background-size: contain; }
            .audioIcon:hover { opacity: 0.8; }
            .audioPopup { position: fixed; display: flex; align-items: center; justify-content: space-between; padding-inline: 3rem; left: 0; bottom: 0; width: 100%; color: white; background-color: rgba(0,0,0,0.8); z-index: 999; }
            .audioPopup .closeBtn { position: absolute; right: 5px; top: 5px; padding: 0; cursor: pointer; background-size: contain; }
            .audioPopup .closeBtn::after { content: '\f057'; font-family: 'Font Awesome 5 Free'; font-size: 24px; line-height: 1; font-weight: bold; color: var(--gray-99); }
            .audioPopup > .audioText { padding: 15px; }
            .audioPopup .audioInfo { font-size: var(--fs-h6); }
            .audioPopup .audioTitle { font-size: var(--fs-p); }
            .audioPopup > .audioMedia { flex-shrink: 0; width: 580px; }
            @media (max-width: 991.98px) {
                .audioPopup { flex-direction: column; align-items: center; padding-inline: 1rem; }
                .audioPopup > .audioText { padding-bottom: 0; text-align: center; }
                .audioPopup > .audioMedia { width: 100%; }
            }

            /* posterDetail.html */
            @media (min-width: 1600px){
                .posterDetail main > .container { max-width: 1320px; }
            }
            .posterDetail_list { padding: 40px 0; margin: 0 -40px; }
            .posterDetail_list > .posterDetail_col { padding: 0 40px; }
            .posterDetail_listItem { position: relative; margin-bottom: 24px; }
            .posterDetail_listItem > *:nth-child(1) { font-weight: bold; font-size: 14px; line-height: 2.5; }
            .posterDetail_listItem > *:nth-child(2) { color: #707070; font-size: 16px; line-height: 2.25; display: flex; align-items: center; }
            .posterDetail_listItem::before { content: ''; display: block; padding-top: 24px; border-top: 1px solid var(--gray-d6); }
            .posterDetail_listItem:first-child::before { display: none; }
            .posterDetail_article { background-color: #fff; padding: 70px 100px; }
            /* .posterDetail_article section:not(:last-child) { padding-bottom: 30px; }
            .posterDetail_article section > *:first-child { font-size: 20px; line-height: 1.8; color: var(--black); margin-bottom: 25px; }
            .posterDetail_article section > * { font-size: 16px; line-height: 2.25; color: #707070; margin-bottom: 50px; } */
            @media (max-width: 991.98px){
                .posterDetail_article { padding: 30px 30px; }
            }
            @media (max-width: 767.98px){
                .posterDetail_list { padding: 30px 0; margin: 0 -12px; }
                .posterDetail_list > .posterDetail_col { padding: 0 15px; }
                .posterDetail_list > .posterDetail_col:not(:first-child) > .posterDetail_listItem:first-child::before { display: block; }
                .posterDetail_listItem > *:nth-child(2) { font-size: 14px; line-height: 2; }
                /* .posterDetail_article section:not(:last-child) { padding-bottom: 40px; }
                .posterDetail_article section > *:first-child { font-size: 16px; line-height: 1.8; margin-bottom: 15px; }
                .posterDetail_article section > * { font-size: 14px; line-height: 2; margin-bottom: 30px; }
                .posterDetail_article section > *:last-child { margin-bottom: 0; } */
            }
            @media (max-width: 575.98px){
                .posterDetail_article { padding: 30px 12px; margin: 0 -12px; }
            }


        /*=== news.html ===*/
            .news_table > thead > tr > th:first-child,
            .news_table > tbody > tr > td:first-child { padding-left: 36px; }
            .news_table > tbody > tr { cursor: pointer; }
            .news_table > tbody > tr > td:nth-child(2) { width: 100%; }
            .news_table > tbody > tr > td > .news_name { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; overflow: hidden; }
            .news_table > tbody > tr > td:nth-child(3) { white-space: nowrap; }
            .news_table > tbody > tr.sp_tag.tag_new > td:first-child::before { content: 'NEW'; }

            @media (max-width: 1199.98px) {
                .news_table > tbody > tr > td:nth-child(2){ padding-top: 24px; }
                .news_table > tbody > tr > td:nth-child(3){ padding-bottom: 24px; }
                .news_table > tbody > tr > td > .news_name { -webkit-line-clamp: 3; }
                .news_table > tbody > tr.sp_tag.tag_new > td:first-child::before { left: 0; transform: translateY( -50% ); }
            }


        /*=== submission.html ===*/
            @media (min-width: 1200px) {
                .submission_table > tbody > tr > td:nth-child(5) { white-space: nowrap; }
            }


        /*=== invoice.html ===*/
            @media (min-width: 1200px) {
                .invoice_table > tbody > tr > td:nth-child(2) { white-space: nowrap; }
                .invoice_table > tbody > tr > td:nth-child(3) { width: 100%; }
            }


        /*=== photo.html ===*/
            .photo_card { border: solid 1px var(--gray-c7); }
            .photo_card > * { display: flex; align-items: center; padding: 12px; }
            .photo_card > * img { width: 100%; height: 100%; object-fit: contain; }


        /*=== login.html ===*/
            .nav.auth_nav { justify-content: space-between; align-items: flex-end; }
            .nav.auth_nav > .nav-item { width: 49%; }
            .nav.auth_nav > .nav-item > .nav-link { padding: 20px 30px; text-align: center; background-color: #adb5bd; }
            .nav.auth_nav > .nav-item > .nav-link.active { background-color: white; }

            .login_bg { background-image: url(../img/bg_auth@2x.jpg); }
            .login_padding_top { padding-top: 60px; }
            @media (max-width: 575.98px){
                .login_padding_top { padding-top: 16px; }
            }

            .auth_card { padding: 30px 60px 45px 60px; background-color: white; }
            .auth_card_container { max-width: 480px; margin: 0 auto; }
            .auth_form { max-width: 480px; margin: auto; font-size: 16px; }

            @media( max-width: 575.98px ){
                .auth_card { padding: 20px 15px 30px 15px; }
                .auth_form { font-size: 14px; }
                .nav.auth_nav > .nav-item > .nav-link { font-size: 14px; }
            }


        /*=== channel / channel_video / program_video ===*/
            .bg_channel { background: var(--gray-ef); }
            .program_video_title { padding-bottom: 1rem; font-size: 22px; font-weight: bold; }
            @media (max-width: 575.98px) {
                .program_video_title { padding: 1rem; font-size: 18px; background: url(../img/bg_video@2x.jpg) center center no-repeat; background-size: cover; }
            }
            @media (min-width: 576px) {
                .bg_program_video_main { background: url(../img/bg_video@2x.jpg) center center no-repeat; background-size: cover; }
            }

            /* channel */
            .channel_block { display: block; }
            .channel_block::after { padding: 7px 15px; font-weight: bold; position: absolute; left: 0; top: 0; transform: translateY(-50%); z-index: 1; }
            .channel_block.coming_soon::after { content: 'Coming Soon'; color: var(--main); background-color: white; }
            .channel_block.live_now::after { content: 'Live Now'; color: white; background-color: var(--main); }
            @media (max-width: 575.98px) {
                .channel_block::after { padding: 4px 12px; }
            }

            .channel_rowCard:not(:first-child) { margin-top: 30px; }
            @media (max-width: 991.98px) {
                .channel_rowCard:not(:first-child) { margin-top: 20px; padding-top: 20px; border-top: 1px solid #e4e4e4; }
            }


            /* channel_video */
            #survey .modal-body { padding: 0px 60px 24px 60px; }
            .survey_title { font-size: 30px; font-weight: bold; margin-bottom: 20px; }
            .survey_question { list-style: none; padding: 0; margin: 0; }
            .survey_question > li:not(:last-of-type)::after { content: ""; display: block; border-bottom: 1px solid var(--gray-d6); margin: 20px 0; }
            .survey_question .question_title { font-size: 18px; font-weight: bold; margin-bottom: 16px; }
            .survey_question .form-check { font-size: 16px; }
            @media (max-width: 575.98px) {
                #survey .modal-body { padding: 0px 16px 24px 16px; }
                .survey_title { font-size: 24px; text-align: center; }
                .survey_question .question_title { font-size: 16px; }
                .survey_question .form-check { font-size: 14px; }
            }

            .video_intro_block { padding: 24px; border-radius: 8px; background-color: #fcf0f3; line-break: anywhere; }


        /*=== accommodation.html ===*/
            .icon_star { --star-score: 1; --star-width: 24px; position: relative; width: var(--star-width); height: var(--star-width); }
            .icon_star::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; right: 0; background: url(../img/icon/star.png) center center no-repeat; background-size: cover; }
            .icon_star::after { content: ''; position: absolute; left: 0; top: 0; bottom: 0; right: 0; background: url(../img/icon/star_filled.png) center center no-repeat; background-size: cover; clip: rect(0, calc( var(--star-width) * var(--star-score) ), var(--star-width), 0) }

            .accom_block { display: flex; justify-content: space-between; padding-bottom: 32px; }
            .accom_block + .accom_block { border-top: solid 1px var(--gray-c7); padding-top: 32px; }
            .accom_block > .accom_desc { flex: 3; padding-right: 1rem; align-self: center; }
            .accom_block > .accom_map { flex: 2; }
            @media (max-width: 1199.98px) {
                .accom_block > .accom_desc { flex: 2; }
            }
            @media (max-width: 991.98px) {
                .accom_block { flex-direction: column; }
                .accom_block > .accom_desc { flex: 3; padding: 0 0 1rem 0; align-self: flex-start; }
            }


        /*=== transportation ===*/
            .trans_section_container .mb_16_sm_40 { margin-bottom: 2.5rem; }
            .trans_section_container .ch_mb_8_sm_16  > *:not(:last-child) { margin-bottom: 1rem; }
            .trans_section_container .ch_mb_16_sm_40 > *:not(:last-child) { margin-bottom: 2.5rem; }

            .trans_section_container > section { padding-bottom: 40px; }
            .trans_section_container > section + section { padding-top: 40px; border-top: solid 1px var(--gray-d6); }
            @media (max-width: 575.98px){
                .trans_section_container > section { padding-bottom: 30px; }
                .trans_section_container > section + section { padding-top: 30px; }

                .trans_section_container .mb_16_sm_40 { margin-bottom: 1rem; }
                .trans_section_container .ch_mb_8_sm_16  > *:not(:last-child) { margin-bottom: 0.5rem; }
                .trans_section_container .ch_mb_16_sm_40 > *:not(:last-child) { margin-bottom: 1rem; }
            }


        /*=== about_Taipei ===*/
            .aboutTP_title { display: flex; align-items: center; font-size: var(--fs-h2); font-weight: bold; margin-bottom: 1rem; }
            .aboutTP_title > img { flex-shrink: 0; margin-right: 12px; width: 60px; height: 60px; }
            .aboutTP_warningCard { padding: 24px; border-radius: 10px; background-color: #FFEF92; }
            @media (max-width: 575.98px){
                .aboutTP_title > img { width: 50px; height: 50px; }
            }


        /*=== sponsors.html ===*/
            .sponsors .sponsorRow { padding: 0 20px; }
            .sponsors .sponsorCol { padding: 0px 15px 40px 15px; }
            .sponsors .sponsorItem { text-align: center; }
            .sponsors .sponsorItem .sponsorItem--logo { max-width: 280px; margin: 0 auto 10px auto; /*padding: 5px 10px;*/ }
            .sponsors .sponsorItem .sponsorItem--logo img { display: block; image-rendering: -webkit-optimize-contrast; object-fit: contain; }
            .sponsors .sponsorItem .sponsorItem--text { color: var(--black); text-align: center; line-height: 1.5; padding: 5px 0; }
            .sponsors .sponsorItem .sponsorItem--text ._en { font-size: 18px; padding: 5px 0; }
            .sponsors .sponsorItem .sponsorItem--text ._tw { font-size: 14px; font-weight: bold; }
            @media (max-width: 1599.98px){
                .sponsors .sponsor_btn { left: auto; }
            }
            @media (max-width: 991.98px){
                .sponsors .sponsorRow { padding: 0 15px; }
                .sponsors_detail footer { display: none !important;}
            }
            @media (max-width: 575.98px){
                .sponsors .sponsorCol { padding: 18px 0px 18px 0px; }
                /* .sponsors .sponsorCol:not(:last-child) { border-bottom: 1px solid var(--gray-d6); } */
                .sponsors .sponsorItem { display: flex; align-items: center; justify-content: center; }
                .sponsors .sponsorItem .sponsorItem--logo { flex: 0 0 40%; max-width: 200px; max-height: none; margin: auto; }
                .sponsors .sponsorItem .sponsorItem--text { flex: 0 1 52%; max-width: 52%; text-align: left; font-size: 14px; padding-left: 8px; }
            }
            .sponsors_group { text-align: center; font-weight: bold; font-size: 24px; }
            @media (max-width: 575.98px) {
                .sponsors_group { font-size: 18px; }
            }


        /*=== receipt.html ===*/
            body.receipt { font-size: 16px; }
            body.receipt .sheet { width: 210mm; height: 296mm; page-break-after: always; }
            @media screen {
                .receipt { background: #e9e9e9; }
                body.receipt .sheet { background: white; box-shadow: 0 .5mm 2mm rgba(0,0,0,.3); margin: 5mm auto; }
            }
            @media print {
                body.receipt { width: 210mm }
            }

            .receiptContainer { max-width: 175mm; margin: auto; }
            .receiptTitle { font-size: 22px; font-weight: bold; }
            .receiptTable { border: solid 1px #000; }
            .receiptTable td { padding: 8px; border-bottom: solid 1px #000; }
            .receiptTable > tbody > tr > td:first-child { white-space: nowrap; width: 0; }


        /*=== sign_up.html ===*/
            #modal-policy-tw .list_custom li:nth-child(n+2) { margin-top: 0.5rem }


    /*====== 備註 ======*/
        /*=== mobile(0) --> PC(∞) ===*/
            @media (min-width: 576px) {}
            @media (min-width: 768px) {}
            @media (min-width: 992px) {}
            @media (min-width: 1200px) {}
            @media (min-width: 1600px) {}

        /*=== PC(∞) --> mobile(0) ===*/
            @media (max-width: 1599.98px) {}
            @media (max-width: 1199.98px) {}
            @media (max-width: 991.98px) {}
            @media (max-width: 767.98px) {}
            @media (max-width: 575.98px) {}
